问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

css中在display前面加下划线是什么作用!

发布网友 发布时间:2022-04-22 02:55

我来回答

8个回答

热心网友 时间:2022-04-21 00:15

“_”是CSS hack 类内属性前缀法中的一种,是IE6专属的hack。下面详细说一下CSS hack。


  CSS hack由于不同厂商的浏览器,比如Internet Explorer,Safari,Mozilla Firefox,Chrome等,或者是同一厂商的浏览器的不同版本,如IE6和IE7,对CSS的解析认识不完全一样,因此会导致生成的页面效果不一样,得不到我们所需要的页面效果。 这个时候我们就需要针对不同的浏览器去写不同的CSS,让它能够同时兼容不同的浏览器,能在不同的浏览器中也能得到我们想要的页面效果。

  简单的说,CSS hack的目的就是使你的CSS代码兼容不同的浏览器。当然,我们也可以反过来利用CSS hack为不同版本的浏览器定制编写不同的CSS效果。


1.原理


  由于不同的浏览器对CSS的支持及解析结果不一样,还由于CSS中的优先级的关系。我们就可以根据这个来针对不同的浏览器来写不同的CSS。

 
 CSS Hack大致有3种表现形式,CSS类内部Hack、选择器Hack以及HTML头部引用(if IE)Hack,CSS Hack主要针对类内部Hack:比如 IE6能识别下划线"_"和星号" * ",IE7能识别星号" * ",但不能识别下划线"_",而firefox两个都不能认识。等等

  选择器Hack:比如 IE6能识别*html .class{},IE7能识别*+html .class{}或者*:first-child+html .class{}。等等

  
HTML头部引用(if IE)Hack:

  针对所有IE:<!--[if IE]><!--您的代码--><![endif]-->,

  针对IE6及以下版本:<!--[if lt IE 7]><!--您的代码--><![endif]-->

  这类Hack不仅对CSS生效,对写在判断语句里面的所有代码都会生效。

  书写顺序,一般是将识别能力强的浏览器的CSS写在后面。下面如何写里面说得更详细些。


2、常用的CSS hack方式

  

  (1)方式一 条件注释法

  只在IE下生效

  <!--[if IE]>

  这段文字只在IE浏览器显示

  <![endif]-->

  只在IE6下生效

  <!--[if IE 6]>

  这段文字只在IE6浏览器显示

  <![endif]-->

  只在IE6以上版本生效

  <!--[if gte IE 6]>

  这段文字只在IE6以上(包括)版本IE浏览器显示

  <![endif]-->

  只在IE8上不生效

  <!--[if ! IE 8]>

  这段文字在非IE8浏览器显示

  <![endif]-->

  非IE浏览器生效

  <!--[if !IE]>

  这段文字只在非IE浏览器显示

  <![endif]-->

  (2)方式二 类内属性前缀法

  属性前缀法是在CSS样式属性名前加上一些只有特定浏览器才能识别的hack前缀,以达到预期的页面展现效果。

  IE浏览器各版本 CSS hack 对照表

    


说明:在标准模式中

“-″减号是IE6专有的hack

“\9″ IE6/IE7/IE8/IE9/IE10都生效

“\0″ IE8/IE9/IE10都生效,是IE8/9/10的hack

“\9\0″ 只对IE9/IE10生效,是IE9/10的hack

(3)CSS hack方式三:选择器前缀法

选择器前缀法是针对一些页面表现不一致或者需要特殊对待的浏览器,在CSS选择器前加上一些只有某些特定浏览器才能识别的前缀进行hack。


目前最常见的是


*html *前缀只对IE6生效*+html *+前缀只对IE7生效

@media screen\9{...}只对IE6/7生效

@media \0screen {body { background: red; }}只对IE8有效

@media \0screen\,screen\9{body { background: blue; }}只对IE6/7/8有效

@media screen\0 {body { background: green; }} 只对IE8/9/10有效

@media screen and (min-width:0\0) {body { background: gray; }} 只对IE9/10有效

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {body { background: orange; }} 只对IE10有效等等


3、实际应用


比如要分辨IE6和firefox两种浏览器,可以这样写:

div{
background:green;/*forfirefox*/
*background:red;/*forIE6*/(bothIE6&&IE7)
}

我在IE6中看到是红色的,在firefox中看到是绿色的。

  解释一下:

  上面的css在firefox中,它是认识不了后面的那个带星号的东西是什么的,于是将它过滤掉,不予理睬,解析得到的结果是:div{background:green},于是理所当然这个div的背景是绿色的。

  在IE6中呢,它两个background都能识别出来,它解析得到的结果是:div{background:green;*background:red;},于是根据优先级别,处在后面的red的优先级高,于是当然这个div的背景颜色就是红色的了。

热心网友 时间:2022-04-21 01:33

这是真对IE6写的css。首先我们要了解一个概念CSS hack。不同浏览器,比如IE6、IE7、IE8,Mozilla Firefox等,对CSS的支持及解析结果不同,因此会导致相同的网页生成的页面效果不一样。这个时候我们就需要针对不同的浏览器去定义不同的CSS,让它能够同时兼容不同的浏览器,能在不同的浏览器中也能得到我们想要的页面效果。这个针对不同的浏览器写不同的CSS code的过程,就叫CSS hack,也叫写CSS hack。CSS Hack的原理:由于不同的浏览器对CSS的支持及解析结果不同以及CSS中的优先级的关系,我们就可以根据这个来针对不同的浏览器来写不同的CSS。比如:IE6能识别下划线"_"和星号" * ",IE7能识别星号" * ",但不能识别下划线"_",而firefox两个都不能认识。例如:比如,通常我们会遇到如下的写法:
.side_col {
float:left; display: inline; margin-left: 20px;
}
而为了适应IE6是:
.side_col {
float: left; margin-left: 20px;
}
* .side_col {
_display:inline; /*hacked for IE 6*/
}
再比如: id="bgcolor" 的控件要在 IE6 中显示蓝色, IE7 中显示绿色, Firefox 等其他浏览器中显示红色. #bgcolor {background:red !important; /* Firefox 等其他浏览器 */background:blue; /* IE6 */}*+html #bgcolor {background:green !important; /* IE7 */}IE6 不认 !important, 也不认 *+html. 所以 IE6 只能是 blue.
IE7 认 !important, 也认 *+html, 优先度: (*+html + !important) > !important > +html. IE7 可以是 red, blue 和 green, 但 green 的优先度最高.
Firefox 和其他浏览器都认 !important. !important 优先, Firefox 可以是 red 和 blue, 但 red 优先度高. 参考:百度百科CSS Hack

热心网友 时间:2022-04-21 03:24

当两个以上元素浮动时,在ie6下有可能出现相邻的元素外边距计算错误,被算成正确尺寸的两倍

这时给出问题的元素加上display:inline;就可以解决修正这个问题,由于只有ie6有这个错误,所以前面加下划线_display:inline;让ie能识别,其他浏览器忽略。

热心网友 时间:2022-04-21 05:32

是针对IE6写的hack而已,也就是说只有IE6的情况下这个属性才会有效
所有浏览器 通用 height:100px;
IE6 专用 _height: 100px;
IE7 专用 *+height: 100px;
IE6、IE7 共用 *height:100px;
IE7、FF 共用 height: 100px!important;
例如:
#example { height:100px; } /*FF */
* html #example {height:200px; } /* IE6 */
*+html #example {height:300px; } /* IE7 */

热心网友 时间:2022-04-21 07:57

这个是用来出来浏览器兼容性的,前面加下划线的元素只有IE6.0能识别,例如:
.a
{
display:none;
_display:inline;
}
这个就表示调用这个样式的元素在IE7.0或者以上的浏览器是不显示的,而在IE6.0中调试时它就会显示!

热心网友 时间:2022-04-21 10:38

这应该是为了兼容ie7,加了下划线是只写给ie7读的

热心网友 时间:2022-04-21 13:36

IE6 hack...

热心网友 时间:2022-04-21 16:51

兼容老板ie的写法
css中在display前面加下划线是什么作用!

CSS Hack大致有3种表现形式,CSS类内部Hack、选择器Hack以及HTML头部引用(if IE)Hack,CSS Hack主要针对类内部Hack:比如 IE6能识别下划线"_"和星号" * ",IE7能识别星号" * ",但不能识别下划线"_",而firefox两个都不能认识。等等 选择器Hack:比如 IE6能识别*html .class{},IE7能识别*+...

类似这种前面带下划线的css样式_position _display _width _height是什 ...

CSS的语法很简单,它使用一组英语词来表示不同的样式和特征。一个式样表由一组规则组成。每个规则由一个“选择器”(selector)和一个定义部分组成。每个定义部分包含一组由半角分号(;)分离的定义。这组定义放在一对大括号({ })之间。每个定义由一个特性,一个半角冒号(:)和一个值组成。选择...

css样式中带下划线_的属性是什么意思?

加下划线,目的是为了区别ie6, http://www.mycosplays.com

css的下划线,在display怎么去除下划线

css去掉下划线只要我们把text-decoration属性改成none就可以了。并不是很难,在HTML中,我们可以使用u标签来加下划线,但是在css中我们只能使用text-decoration属性,我们想把下划线设置成红色,只要我们保持和字体的颜色相同就可以了。在css中,我们可以使用text-decoration属性来表示下划线和删除线等样式,首先...

关于css中下划线的用法

文本没有换行,那就用border-bottom设置一个下面的边框,当然,你得控制这个div的padding来控制下划线与文本的距离。如果文本有换行,那这个div得设置background,用一个线的图片作为背景平铺。比方字号是12px,行高是20px,那么这个图片就要做成高度也是20px。理解吗?

在网站建设中什么是下划线?

在网站建设中,下划线(underscore)是一种标点符号,用于连接单词或命名标识。它通常以一个水平线段(_)表示。下划线在网站建设中具有以下用途:1.命名约定:下划线可以用于命名标识,如变量名、函数名、CSS类名等。在命名时,下划线可以用于连接多个单词,提高标识的可读性,例如"my_variable"、"main_...

关于css中下划线的用法

我看你的意思好像是想做一个固定不变的横线么?那个应该是用在表格上面的,设置一下border属性,上左下都是0 下面有宽度,然后在设置一下border 的样式就可以了。=== 禅意花园的在最后面有几个帮你预备的标签的

如何让 Html的表格中单元格的内容居中显示

让html的表格中单元格的内容居中显示的方法如下:1、新建一个html5文件。2、创建一个宽度为300px,三行四列的表格并写入内容。3、通过css选择table标签控制表格内容居中,text-align:center;

css 如何给div每一行都有一个下划线。

题目的意思应该是,有很多行文字,想在这很多行文字下每一行都加个下划线。很多人答在盒子地下加下划线是不合适的,请认证审题。有2种方法 1.text-decoration:underline 2.把P标签改成span标签 用border-bottom 想改下划线位置可以用padding 虽然过去好几年了,不过还是改一改吧。

页眉的下划线怎么加

页眉下划线是一种常见的装饰手段,能提升页面的专业感和视觉吸引力。在HTML中,我们可以通过CSS来轻松实现这一效果。首先,创建一个包含页眉内容的无序列表,每个列表项代表一个页眉部分。要添加下划线,我们需要在CSS中为元素设置边框,如:li.header-underline { border-bottom: 1px solid; }。通过调整...

css display什么意思 css下划线怎么去掉 css怎么定义下划线 css display flex css去掉a标签下划线 displaycss样式 display:inline css下划线代码 css清除下划线
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
四大银行有哪几个银行 广西有什么银行网点 【米色】淘宝店鼠标经过图片旋转180度效果分析,附源码下载 求吉林交通文艺台午夜大篷车主持人会风和王阔以前主持节目的MP3录音 吉林交通文艺台播音主持介绍 我想转账给一个朋友,他给了我一个账户,但我不知道他的地址,银行可以查 ... 如何在iPhone上通过快捷指令设置充电提示音? iPhone充满电之后,如何设置才能有提示音? 别人向我网上汇款时,可以只告诉他我的账号和名字〔不告诉姓〕吗?事因... 提款机怎么转账???为什么输入对方账号不显示对方姓名。我是第一次用提... 如何用CSS改变上划线,下划线以及删除线的颜色 css中的下划线是什么意思? 关于css中下划线的用法 css样式中怎么加入去下划线啊 怎样用CSS样式在文字下面加下划线 如何消除电话号码的标记 苹果6手机通讯录怎么倒入卡里 一般新手学习ae大概要多久才能入门? 新手零基础如何快速学会网络营销? 怎样学好新媒体 新媒体运营应该怎样学习 新手入门新媒体运营的话,选择哪些岗位比较好啊? 新媒体运营:如何能正确的入门新媒体 新手如何入门新媒体运营岗位 自媒体哪个好,一分钟认识自媒体领域 想学自媒体怎么入门? 新手如何做自媒体? 苹果6怎么把联系人导到卡 一个身份证就能验证一个快手直播嘛? 快手直播权限有了,但是身份证没了,用别人的身份... 如何用css设置每个标题下方都有下划线 大额资金如何配置基金 怎么买基金?高手们来谈谈基金! 我准备投资1000万做投资买基金,请指教! 如何买基金?怎么买赚钱? 怎么买基金?必须开户吗? 怎么买基金 请问如何买基金??具体费用手续又如何最好有实例! 新手买基金有何方法? 请高手告诉我该如何买基金 买基金定投在这方面要考虑哪些方面? 想学习如何买基金 什么是基金?怎样买啊?程序是怎么样的啊?怎样弄才是... 中秋随笔600字 中秋的随笔 中秋节随笔300字 简单点 关于中秋节 随笔 随笔 中秋 400字左右 中秋随笔 中秋随笔(800字)