第五章  层叠管理样式

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. SEO定义目的,优化的好处

    SEO:search engine optimization(搜索引擎优化) SEO严谨的定义:SEO是指在了解搜索引擎自然排名机制的基础上,对网站进行内部及外部的调整优化,改进网站在搜索引擎中关键字 ...

  2. dropdown-toggle 的点击禁用

    <div class="dropdown select-dropdown" id="choiceTagdiv"> <a class=" ...

  3. Asp.net MVC 单元测试 简要笔记

    首先要啰嗦几句. 单元测试是TDD的重要实践方法,也是代码质量的一种保证手段.在项目的工程化开发中,研发人员应该尽量保证书写Unit Test,即使不使用TDD. (VS中,我们可以直接使用微软提供的 ...

  4. Javaweb 第6天JDBC课程

    JDBC课程 两日大纲 ● JDBC基本操作 ● 预设语句对象 ● 自定义数据库工具类 ● JDBC批处理 ● 事务 ● 连接池 *********************************** ...

  5. 关于JavaScript的小笔记

    1.当 JavaScript 中的变量被声明的时候,程序内部会给它一个初始值 undefined.当你对一个值为 undefined 的变量进行运算操作的时候,算出来的结果将会是 NaN,NaN 的意 ...

  6. Apple 移动设备绑定动态生成元素点击事件$(document).on('click',element,callback)失效解决方法

    今天在工作中刚接触到了微信社区相关的开发工作,测试的时候发现,动态生成元素的点击事件在andriod设备上可以触发,而在apple移动设备上却无法触发.好奇的我赶紧百度了下,很快就在stackover ...

  7. 浏览器差异性hack

    1 js函数 很多人误以为数组 push 方法拼接字符串会比 += 快,要知道这仅仅是 IE6-8 的浏览器下. 实测表明现代浏览器使用 += 会比数组 push 方法快,而在 v8 引擎中,使用 + ...

  8. url中去掉index.php,方便redirect()

    01 配置文件 return Array( 'URL_MODEL' => '2',); 02 index.php入口文件下面加入文件 .htaccess -->使用editplus--&g ...

  9. 0. Java开发中的23种设计模式详解(转)

    设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...

  10. Entity Framework Code First -- Migrations 迁移

    在开始使用迁移(Migrations)之前,我们需要一个 Project 和一个 Code First Model, 对于本文将使用典型的 Blog 和 Post 模型 创建一个新的控制台应用程序 M ...