【CSS】【5】CSS继承特性和层叠特性

简介:
一、继承特性:
1、学过Java和C++的都注意到,属于父亲的protected字段或方法肯定会被孩子所继承,而CSS也具备此特性,看下面的例子:
     <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     <html xmlns=" http://www.w3.org/1999/xhtml">
           <head>
                  <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
                  <title>CSS的继承性演示</title>
                  <style type="text/css">
body
                         {
                                 color:red;            
                         }

                  </style>
           </head>
<body> 
<div>
                         &nbsp;&nbsp;&nbsp;CSS的继承性演示
<ul>
<li>首页</li>
                                 <li>简介</li>
                                 <li>联系</li>
                         </ul>
                  </div>
           </body>
     </html>
2、对于这个HTML来讲,div是body的儿子,ul是div的儿子,li是ul的儿子,无论div、ul还是li均是body的后代,其层次关系如下图:
body
       |
       |—— div   ( 其内容: CSS的继承性演示
                 |
                 |—— ul
                          |
                          |—— li ( 其内容: 首页、简介、联系
3、对于这个文件定义了一个body标记选择器,把颜色值设置为红色,如下:
body
    {
           color:red;            
    }
4、使用浏览器打开这个html文件,会发现无论是div的内容(CSS的继承性演示)还是li的内容(首页、简介、联系)均是以红色字体显示,这也说明body的后代自动继承了它的特性。
5、HTML的效果如下,其中的虚框是div的范围:

225243110.jpg


二、层叠特性:

1、网页中的某个元素很有可能会被若干个选择器所修饰,这样就造成了选择器的冲突,那么到底是以哪个选择器为准呢?只要记住如下优先级即可: 行内选择器 > ID选择器 > 类选择器 > 标记选择器
2、举例:
(1)定义mycss.css文件
        .red
        {
                color:red;
        }
        .purple
        {
                color:purple;
        }
        #blue
       {
                color:blue;
       }
       #yellow
       {
                color:yellow;
       }
(2)定义myhtml.htm文件,部分主要内容如下:
      <head>
              <link href="mycss.css" rel="stylesheet" type="text/css" />
      </head>
      <body>
              <p>这是一个文本</p>
              <p class="red">这是带类别选择器的文本</p>
              <p id="blue" class="red">这是带ID和类别选择器的文本</p>
              <p style="color:orange;" id="blue">这是带行内和ID选择器的文本</p>
              <p class="purple red">这是带两个类别选择器的文本</p>
              <p id="yellow red">这是带两个ID选择器的文本</p>
      </body>
(3)效果:

225311711.jpg


(4)解释:
第一个P没有使用选择器,所以采用HTML默认的显示颜色(黑色)
第二个P使用了类选择器,所以优先采用类选择器的颜色(红色)
第三个P使用了ID和类两个选择器,由于ID选择器的优先级高于类选择器,所以颜色显示为蓝色
第四个P使用了行内选择器和ID选择器,由于行内选择器优先级高于ID选择器,所以颜色显示为黄色
第五个P同时使用了两个类选择器,浏览器在解释网页时以第一个类选择器定义的颜色为准,所以颜色显示为紫色
第六个P同时使用了两个ID选择器,但由于ID选择器只能同时用于一个标记且全局唯一,所以浏览器认为这是一个非法的,颜色以其默认值显示(黑色)




     本文转自qingkechina 51CTO博客,原文链接:http://blog.51cto.com/qingkechina/1261736 ,如需转载请自行联系原作者




相关文章
|
2月前
|
前端开发
CSS语言的继承
CSS语言的继承
|
2月前
|
前端开发 算法
CSS语言的层叠和优先级
CSS语言的层叠和优先级
|
5月前
|
人工智能 前端开发 Cloud Native
css选择器有哪些?优先级?哪些属性可以继承?
css选择器有哪些?优先级?哪些属性可以继承?
|
11天前
|
前端开发 UED
【专栏:CSS 进阶篇】CSS3 新特性:过渡、动画与变形
【4月更文挑战第30天】CSS3的过渡、动画和变形三大特性为网页设计注入活力,创造生动丰富的用户体验。过渡提供平滑效果,常用于按钮点击等;动画实现复杂动态效果,适用于滚动字幕等;变形允许元素几何变换,如旋转和缩放。实际应用包括动态导航菜单、图片轮播和加载动画。然而,需注意浏览器兼容性、性能优化和设计平衡。掌握这些特性,将为网页设计带来更多创新可能。
|
13天前
|
前端开发 JavaScript 开发者
【Web 前端】css3的新特性有哪些?
【4月更文挑战第22天】【Web 前端】css3的新特性有哪些?
|
1月前
|
前端开发
css的特性
【4月更文挑战第11天】css的特性
12 1
|
1月前
|
人工智能 前端开发 JavaScript
【前端设计】HTML+CSS+JavaScript基本特性
【前端设计】HTML+CSS+JavaScript基本特性
|
1月前
|
前端开发 容器
CSS面试考点:隐藏元素、BFC、垂直居中、CSS3新特性
【4月更文挑战第2天】 CSS面试考点:隐藏元素、BFC、垂直居中、CSS3新特性
21 10
|
2月前
|
编解码 前端开发 JavaScript
CSS3新特性
CSS3新特性
42 0
|
2月前
|
编解码 前端开发 搜索推荐
CSS3的新特性
CSS3是 CSS(层叠样式表)的最新版本,它在CSS2.1的基础上增加和改进了许多新的特性