CSS中如何把层显示到最前面

html-css015

CSS中如何把层显示到最前面,第1张

使用z-index属性,例如z-index:1000,数值越大所在层显示的越靠前面,区分两层的显示顺序就可以分别将两层的显示值设置,这样就可以分别出这两层的显示情况。前提是将所显示的层定位,z-index只作用于定位的元素。

方法:设置div样式

z-index

:auto

auto可定义为一个值(整数数字),越大代表越置前,如可定义为:

z-index:999。

前提是div是定位元素。

实际上,@import并不是一定要在最前面W3C的CSS2.1标准中,对@import作了以下规定:In CSS 2.1, any @import rules must precede all other rules (except the @charset rule,if present).在CSS2.1中,任何@import命令必须放在所有其它语句之前(除了用到@charset时)。而在CSS3标准中,则是这样规定:Any ‘@import’ rules must follow all ‘@charset’ rules and precede all other at-rules and rule sets in a style sheet.在样式表中,任何@import命令必须紧跟在@charset命令之后(如果有的话),放在其它@命令和样式语句之前。还有,@import命令放在注释之后同样生效。你不需要知道为什么,只要记住如果不这样做@import就会失效就行了。假如你一定要追究为什么要做这样的硬性规定,我认为主要出于这样的考虑:<p id="intro" class="frame head">I'm just a <p>element used test specificity of selectors. So leave me alone!</p>p#intro { font: italic 1em Candara, Arial, sans-serif}p.frame { font: bold 3em Arial, Helvetica, sans-serif}p { font: italic 2em Georgia, serif}你认为页面最终会使用哪条规则的font样式?是第一条p#intro。这里涉及到一个优先级(specificity)的问题:#id >.class >element(标签名)。所以即便p{font}样式出现在p#intro{font}和p.frame{}之后,最终被应用的还是p#intro{font}。而容易导致问题的是下一种情况:p.head { font: italic 1em Candara, Arial, sans-serif}p.frame { font: bold 3em Arial, Helvetica, sans-serif}这次你认为会使用哪条font样式?是第二条p.frame。这里涉及到cascading的问题。p.head的优先级和p.frame的优先级相同,但p.frame写在p.head之后,按规则p.frame的font样式会覆盖p.head的font样式。在这种情况下,再允许把@import放在一堆样式当中,到底@import引入的样式表中有没有会覆盖当前样式表的条目,诸如此类的判断会更加困难。实际上,即便CSS标准里没有作这样的规定,程序员也还是会这样做,因为这样可以减少很多不必要的麻烦。