第五章  层叠管理样式

1.层叠是决定哪些样式属性要被应用到某一个元素的一套规则。

2.最近的祖先样式胜出:浏览器会采用离相关标签最近的样式。

3.直接应用的样式胜出:任何直接应用于指定标签的样式都战胜了继承来的属性。

4.多个样式可能应用于同一个标签的几种情况:

·标签同时应用了一个标签选择器和一个类样式。例如,<h2>标签有标签样式和类样式.leadHeadline,还有这样的HTML代码:<h2 class=”leadHeadline”>Your Future Revealed!</h2>。这两个样式都应用于这个<h2>标签。

·同一个样式名称在样式表里出现了不止一次。同一个样式表里面可能同时有一个群组选择器和一个类样式 .leadHeadline。这两个规则都定义了任何带有leadHeadline类的元素的展示效果。

·一个标签同时应用了类和ID样式。也许是一个名为#banner的ID,以及一个名为.new的类,还有这样的HTML代码:<div id=”banner” class=”news”>。banner和news样式中的属性都应用于这个<div>标签。

·多个样式表中都包含了附给某一个网页的同一个样式名称。同名的样式可能通过链接外部样式表而引入,也可能通过内部样式表而引入。或者,相同的样式也可以出现在链接到同一个页面的多个外部样式表文件中。

·有些复杂的选择器瞄准了同一个标签。如果多个样式应用于某个元素,那么Web浏览器会合并所有这些样式的属性,只要它们不发生冲突。

5.用权重值决定哪种样式胜出。CSS有这样一个权重值计算系统:

·一个标签选择器值1分。

·一个类选择器值10分。

·一个ID选择器值100分。

·一个内建样式值1000分。

·伪元素通常被当做标签选择器对待,值1分,伪类通常被当做类,值10分。

权重值相同时最后一个样式胜出。

6.当你一定要确保一个特定的属性不能被其他更具体的样式覆盖的时候,就在属性的后面插入!important。可以避免它被权重更大的属性覆盖。

7.选择性的覆盖。

(1)创建一个内部样式表,列出要使之失效的清单。将外部样式表放在内部样式表之前,这样就可以确保在两个样式权重相同时,内部样式表会胜出。

(2)再创建一个样式表,除了把它附给styles.css样式表之外还要附给首页。

8.避免权重战争:

应尽量使用类选择器代替ID选择器,因为类名可以重复,但是ID名唯一,且ID选择器功能太强大只有更强大的权重才能覆盖它。

9.重新创建样式:

为了避免浏览器之间的显示差异,必须从头开始创建样式。就是删除浏览器的所有内建样式,重新设置你自己的样式。删除浏览器的样式的概念称作CSSreset。

CSS3秘笈:第五章的更多相关文章

  1. CSS3秘笈:第九章

    1.链接状态:大部分浏览器支持4中基本的链接状态:未访问的链接.已访问的链接.访问者的鼠标正悬停在上方的链接.正被单击的链接.这些状态的4个对应伪类选择器分别是:link.:visited.:hove ...

  2. CSS3秘笈:第一章

    1.<div>和<span>标签: <div>和<span>标签:就像是一个空的容器,我们要往里面填充内容.一个div就是一个块,意味着它的前后都要空一 ...

  3. CSS3秘笈:第二章

    1.一个样式由两个元素组成:浏览器对其设置格式的网页元素(选择器,selector)和实际的格式化指令(声明块,declaration block). 2.简单的样式也包含了以下几个元素: (1)Se ...

  4. CSS3秘笈复习:十三章&十四章&十五章&十六章&十七章

    第十三章 1.在使用浮动时,源代码的顺序非常重要.浮动元素的HTML必须处在要包围它的元素的HTML之前. 2.清楚浮动: (1).在外围div的底部添加一个清除元素:clear属性可以防止元素包围浮 ...

  5. CSS3秘笈第三版涵盖HTML5学习笔记6~8章

    第二部分----CSS实用技术 第6章,文本格式化 指定备用字体: font-family:Arial,Helvetica,sans-serif; 当访问者没有安装第一种字体时,浏览器会在列表中继续往 ...

  6. CSS3秘笈第三版涵盖HTML5学习笔记13~17章

    第13章,构建基于浮动的布局 使用的是float(浮动)属性 注:float:none值将取消所有浮动,通常只用来取消元素中已经应用的浮动. 切记:不需要给正文的div设计宽度,即使设计成固定宽度也不 ...

  7. CSS3秘笈第三版涵盖HTML5学习笔记9~12章

    第9章,装饰网站导航 限制访问,处于隐私方面考虑,浏览器已经开始限制可以对伪类:visited应用哪些CSS属性了.其中包括对已访问过的链接定义color.background-color.borde ...

  8. CSS3秘笈第三版涵盖HTML5学习笔记1~5章

    第一部分----CSS基础知识 第1章,CSS需要的HTML HTML越简单,对搜索引擎越友好 div是块级元素,span是行内元素 <section>标签包含一组相关的内容,就像一本书中 ...

  9. CSS3秘笈复习:第九章&第十章

    第九章 1.和链接有关的伪类: (1):link,未访问过的链接 (2):visited,已访问过的链接 (3):hover,鼠标悬停链接 (4):active,单击链接时 这四种方式一定要严格按上面 ...

随机推荐

  1. SQLServer性能优化

    http://www.cnblogs.com/studyzy/archive/2008/11/24/1339772.html

  2. sql server 2008 R2 压缩备份数据库

    今天需要把一个省外项目的数据库从服务器上备份.拷贝到本机(跨地域传输数据库备份文件). 连上VPN,通过远程桌面连接,连接上服务器,发现数据库文件已经有20G以上大小了. 文件太大,公司网络也不稳定, ...

  3. PHP mktime函数获取今天的开始和结束时间戳

    php 获取今日.昨日.上周.本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime(). mktime函数用法如下:mktime(hour,minute,second,m ...

  4. Note_JavaWeb_SpringMVC_尚硅谷

    Spring MVC框架 官网文档 \spring-framework-4.2.6.RELEASE\docs\spring-framework-reference\htmlsingle ------- ...

  5. 自定义GridLayout实现条目的拖动动画特效

    1.自定义GridLayout实现增加条目过度动画操作 public class MyGridLayout extends GridLayout { public MyGridLayout(Conte ...

  6. Scala学习---数组

    1.编写一段代码,将a设置为一个n个随机整数的数组,要求随机数介于0(包含)和n(不包含)之间 /** * Created by vito on 2017/1/11. */ object ex1 { ...

  7. UITextField(一)监听输入内容的变化(开发笔记)

    //添加事件UIControlEventEditingChanged [textField addTarget:self action:@selector(textFieldDidChange:) f ...

  8. Java线程池主线程等待子线程执行完成

    今天讨论一个入门级的话题, 不然没东西更新对不起空间和域名~~ 工作总往往会遇到异步去执行某段逻辑, 然后先处理其他事情, 处理完后再把那段逻辑的处理结果进行汇总的产景, 这时候就需要使用线程了. 一 ...

  9. virtualbox 提示 vboxclient the virtualbox kernel service is not running

    更新完Guest的内核之后,Guest下提示" vboxclient the virtualbox kernel service is not running".Guest下执行: ...

  10. 第六十七节,html表单元素

    html表单元素 学习要点: 1.表单元素总汇 2.表单元素解析 本章主要探讨HTML5中表单元素,表单元素用于获取用户的输入数据.   一.表单元素总汇 HTML5的表单中,提供了各种可供用户输入的 ...