html的class问题,谁帮我解释下hi.intro及.important及全文的大体...
发布网友
发布时间:2024-10-23 14:48
我来回答
共2个回答
热心网友
时间:18小时前
intro-是一个前缀,表示“向内的”。
.important 意思是“重要的” 在CSS中提高优先级别
是为了兼容IE/FF
font-size: 12px !important;
font-size: 13px;
在IE里面,由于IE不理解 !important,则字体大小按照最后设定的13px展示
而FF里面, !important为提高优先级别,则字体大小按照 !important标记的12px展示
”!important”ie6是不能识别的,而FF可以,所以用它对FF和IE6.0分别设置样式,原因是这两种浏览器中对代码的解释存在差异,因而导致有时候相同的样式却是不同的效果!
后来到了IE7”!important”又可以被识别了,所以就不能用了;
现在的做法是IE7中在样式前加"*+html",FF则直接写,FF不能识别"*+html"这个字符串,利用这点做到样式对浏览器的兼容;不过缺点是增加了样式表的长度,拖延了载入时间~
不过最好的做法还是用JS探测浏览器的版本,然后链接不同的样式表!
首先,!important使用的主要目的是区分(IE6)和(IE7,FF),注意IE6是一类,IE7,FF这两个是一类,因为这两个对最新的css完全支持且程度类似。
其次,IE6不解析!important(所以IE6的css最新标准支持不完全),IE7,FF解析!important(支持完善)
再次,某些css某些代码在这两类浏览器里的显示是有差别的(注意这也是使用!important的主要原因所在),比如height: 21px;,在IE6和(IE7,FF)里显示就有差别,后者(IE7,FF)会比前者(IE6)少一个像素。
所以,为了保持各个浏览器显示效果的一致,我们使用两句话分别针对两类浏览器,
className{
height: 22px !important;
height: 21px;
}
height: 22px !important;只有IE7,FF解析
height: 21px;只有IE6解析
比且最终两类浏览器显示效果一致,如果不区别对待,单纯一句height: 21px;那么IE7,FF里显示就会少一个像素的高度。
热心网友
时间:18小时前
样式表中定义了两个类intro和important
<style type="text/css">
h1.intro /*intro之作用在h1标签中*/
{
color:blue;
text-align:center;
}
.important {background-color:yellow;} /*important类定义背景颜色,与!important不同*/
</style>
<h1 class="intro important">Header 1</h1>引用了两个类,类之间用空格分开。如果两个类属性有冲突,以后者为准。