CSS有三个非常重要的特性:层叠性、继承性、优先级。
<style> div { color: tomato; } div { color: turquoise; } </style> </head> <body> <div>天王盖地虎</div> </body>
color样式冲突,第二个color: turquoise的样式离结构更近,所以执行第二个样式。
2.继承性
<style> div { color: turquoise; font-size: 14px; } </style> <body> <div> <p>龙生龙,凤生凤,老鼠的儿子会打洞</p> </div> </body>
这里没有指定p的文字样式,但是p可以继承其父元素即div的文字样式。
特别地:
<style> body { color: turquoise; /* font: 14px/28px 'Microsoft Yahei'; */ font: 12px/1.5 'Microsoft Yahei'; } div { /* 子元素继承了父元素body的行高1.5 这个1.5就是当前文字大小font-size的1.5倍 */ font-size: 14px; } p { /* 1.5*16=当前的行高 */ font-size: 16px; } /* li没有手动指定文字大小,则会继承父亲的文字大小 body文字大小12px 所有li的文字大小为12px 所以当前li的行高就是12*1.5*/ </style> <body> <div>粉红色的回忆</div> <p>粉红色的回忆</p> <ul> <li>我没有指定文字大小</li> </ul> </body>
3.优先级
<style> div{ color: pink; } .test { color: red!important; } #demo { color: seagreen; } </style> </head> <body> <div class="test" id="demo" style="color: rgb(38, 0, 252);">你笑起来真好看</div> </body>
<style> /* ul li权重 0,0,0,1+0,0,0,1=0,0,0,2 */ /* li的权重是0,0,0,1 */ li { color: seagreen; } ul li { color: slateblue; } /* .nav li 权重 0,0,1,0+0,0,0,1=0,0,1,1 */ .nav li { color: yellow; } </style> </head> <body> <ul class="nav"> <li>大猪蹄子</li> <li>猪尾巴</li> <li>猪肘子</li> </ul> </body>
















