web(八)CSS选择器

标签选择器

  使用html标签筛选需要渲染的网页元素。

  • 使用场景

    • 修改标签的默认样式,例如ul li 有默认的内边距,开发时应去掉标签的默认样式。
    • 设定全局字体样式。
    • 根据分辨率设定html标签的默认字体。
      div {/*直接用标签作为选择器*/
          background-color: yellow;
      }

类选择器

  为一组样式属性进行命名(类名),标签使用时需要声明,使用频率最多的选择器。

  • 类选择器的特点

    • 多个标签可以引用同一个样式类,提高程序的公用性。
    • 通过语义化的类名定义增加了程序可读性。
    • 标签可以通过class引入多个样式类名,用空格分开。
    • 类名区分大小写。
       1 <!DOCTYPE html>
       2 <html>
       3     <head>
       4         <meta charset="utf-8" />
       5         <title></title>
       6         <style type="text/css"><!--使用style标签包裹-->
       7             .aClass{
       8                 background-color: #2E8B57;
       9             }
      10             .bClass{
      11                 color: red;
      12             }
      13         </style>
      14     </head>
      15     <body>
      16         <div class="aClass bClass">这是一个div容器</div>
      17     </body>
      18 </html>

ID选择器

    根据标签的id属性筛选要被渲染的标签(很少使用)。

  • 注意事项

    • ID不能重复,因此每个元素都要编写一个id选择器,无法提炼公用样式。
    • 文档内元素的ID是区分大小写的。
    • id命名规则是由字母、数字和下划线组成。
    • 但是数字不能开头。
  • 程序示例

        <head>
            <meta charset="utf-8" />
            <title></title>
            <style type="text/css"><!--使用style标签包裹-->
                #v_div{
                    color: green;
                }
            </style>
        </head>
        <body>
            <div id="v_div">这是一个div容器</div>
        </body>

选择器分组

  对一组选择器赋予同样的样式属性。

  • 使用场景:对于一组公用标签的相同属性进行赋值。
  • 基本语法
    selector1,selector2…..{/*若干个选择器,用逗号分隔*/
        此处为css属性以及取值
    }
  • 程序示例
        <head>
            <meta charset="utf-8" />
            <title></title>
            <style type="text/css"><!--使用style标签包裹-->
                #v_div,a,.v_p{
                    border: solid 3px #800080;
                }
            </style>
        </head>
        <body>
            <div id="v_div">这是一个div容器</div>
            <p class="v_p">段落</p>
            <a href="#">超链接</a>
        </body>

派生选择器

    又称为后代选择器,按照html标签的层级关系(全部后代子孙)筛选被渲染的标签。

  • 基本语法

    <!--父在前,子在后,并用空格隔开-->
    selector1 selector2…..{
        此处为css属性以及取值
    }
  • 程序示例
        <head>
            <meta charset="utf-8" />
            <title></title>
            <style type="text/css">
                .parent p {
                    color: red;
                }
            </style>
        </head>
        <body>
            <div class = "parent">
                    <div>
                <p>派生选择器</p>
                     </div>
            </div>
        </body>

后代选择器

  又称为子元素选择器,按照html标签的层级关系(直接后代),筛选要被渲染的标签。

  • 基本语法

    selector1>selector2{
        此处为css属性以及取值
    }
  • 程序示例
     1     <head>
     2         <meta charset="utf-8" />
     3         <title></title>
     4         <style type="text/css"><!--使用style标签包裹-->
     5             .parent>div>p {
     6                 color: red;
     7             }
     8         </style>
     9     </head>
    10     <body>
    11         <div class = "parent">
    12                 <div>
    13                 <p>派生选择器</p>
    14                  </div>
    15         </div>
    16     </body>

属性选择器

    根据元素的html属性或属性值筛选要被渲染的元素。

  • 基本语法

    selector[attr][attr=‘value’]{
        此处为css属性以及取值
    }
  • 程序示例
    <style type="text/css">
        a[href] {
            color:yellow;
        }
        a[href][title] {
            color:red;
        }
        a[href=‘www.baidu.com‘] {
            color:blue;
        }
    </style>

伪类选择符

    按照用户操作状态筛选需要渲染的元素,在css2中定义的伪类选择符一般用来操作超链接。

  • 伪类选择符的状态

    • E:link:筛选未被访问的链接。
    • E:visited :筛选已经被被访问的链接。
    • E:hover:筛选当前鼠标悬停时的任何元素。
    • E:active:筛选被用户激活(鼠标点击)时的任何元素。
      <style type="text/css"><!--使用style标签包裹-->
          .mydiv:link{
              color: blue;
          }
          .mydiv:visited{
              color: gray;
          }
          .mydiv:hover {
              color: purple;
          }
          .mydiv:active{
              color: red;
          }
      </style>
      <!--.mydiv为类选择器-->

伪对象选择符

    在其他选择器筛选的结果中继续筛选需要渲染的标签

  • E::first-letter:设置符合E筛选条件的第一个字符的样式。
  • E::first-line:设置符合E筛选条件内的第一行的样式。
  • E::before:设置符合E筛选条件的前一个元素的样式。
  • E::after:设置符合E筛选条件的后一个元素的样式。

<style type="text/css">
.myObj::first-line {/*第一行字体为红色*/

    color: blue;

}

</style>

选择器的优先级别

  • 当同一个元素被多个选择符筛选,并且继承父元素的样式时,优先级别如下:

    • !important的优先级别最高。
    • 继承的优先级别最低,私有css属性将覆盖继承的属性。
    • 同一个元素被不同选择器筛选,又无!important修饰时优先级别计算公式
      • ID选择符个数*100+类选择符个数*10+标签选择符个数
时间: 2024-10-12 20:57:02

web(八)CSS选择器的相关文章

web前端入门到实战:css选择器和css文本样式相关

[文章来源微信公众号:每天学编程]---关注,后台领取编程资源 css基础-css选择器和css文本样式相关: 使用link链入外部样式,页面加载时会同时加载样式 @import url("*.css");使用导入式,页面加载完后,才会加载样式 链接伪类的顺序 :link-> :visited ->:hover-> :active 或者 : visited -> : link ->:hover-> :active 选择器的优先级: id选择器>

Web前端入门学习(3)——CSS选择器

CSS选择器 id选择器 <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>无标题文档</title> <style> #box{width:200px;height:200px;border:2px solid #f3f3f

CSS选择器(二)

五.属性选择器. 属性选择器可以根据元素的属性及属性值来选择元素. 简单属性选择 如果希望选择有某个属性的元素,而不论属性值是什么,可以使用简单属性选择器. 例子 1 如果您希望把包含标题(title)的所有元素变为红色,可以写作: *[title] {color:red;} 例子 2 与上面类似,可以只对有 href 属性的锚(a 元素)应用样式: a[href] {color:red;} 例子 3 还可以根据多个属性进行选择,只需将属性选择器链接在一起即可. 例如,为了将同时有 href 和

Day48:HTML(form标签)、CSS选择器

一.表单标签<form> 功能:表单用于向服务器传输数据,从而实现用户与Web服务器的交互. 表单能够包含input系列标签,比如文本字段.复选框.单选框.提交按钮等等. 表单还可以包含textarea.select.fieldset和 label标签. 表单属性 action: 表单提交到哪.一般指向服务器端一个程序,程序接收到表单提交过来的数据(即表单元素值)作相应处理,比如https://www.sogou.com/web method: 表单的提交方式 post/get默认取值就是ge

详解CSS选择器、优先级与匹配原理【转】

作为一个Web开发者,掌握必要的前台技术也是很重要的,特别是在遇到一些实际问题的时候.这里给大家列举一个例子: 给一个p标签增加一个类(class),可是执行后该class中的有些属性并没有起作用.通过Firebug查看,发现没有起作用的属性被覆盖了.这个时候突然意识到了CSS选择器的优先级问题,这里就CSS选择器的优先级问题做了一些总结. 51CTO推荐阅读:巧妙地使用CSS选择器 选择器种类 严格来讲,选择器的种类可以分为三种:标签名选择器.类选择器和ID选择器.而所谓的后代选择器和群组选择

【转】CSS选择器笔记

作者: 阮一峰 日期: 2009年3月12日 来源:http://www.ruanyifeng.com/blog/2009/03/css_selectors.html 去年我学jQuery的时候,曾经做过一点选择器(selector)的笔记. 这几天拿出来看了一下,发现很多都忘记了.所以,我决定把它们贴在这里,方便以后查看.这对其他朋友应该也是有用的,毕竟选择器是制作网页效果的第一步. 笔记分为两个部分,今天是CSS的选择器,以后还有一部分xPath的选择器.今天的笔记中包括44个选择器,基本涵

CSS选择器命名及常用命名

CSS选择器命名及常用命名 CSS选择器命名及常用命名 规范的命名也是Web标准中的重要一项,标准的命名可以使代码更加易读,而且利于搜索引擎搜索,比如定义了两个div,一个 id 命名为"div1",另外一个命名为"News",肯定第二个比较易读,而且搜索引擎抓取率要高,在团队合作中还可以大大提高工作效率.为了达到这种效果我们就要规范化命名(语义化命名)! 说个题外话,规范化命名的代码,会显着你更加专业! 关于CSS命名法,和其他的程序命名差不多,主要有三种:骆驼命

1.3 基本CSS选择器

一.标记选择器 二.类别选择器 三.ID选择器 选择器(selector)是CSS中很重要的概念,所有HTML语言中的标记样式都是通过不同的CSS选择器进行控制的.用户只需要通过选择器对不同的HTML标签进行选择,并赋予各种样式声明,即可实现各种效果. 为了理解选择器的概念,可以用“地图”作为类比.在地图上都可以看到一些“图例”,比如河流用蓝色的线表示,某公路用红色的线表示,省会城市用黑色圆点表示,等等.本质上,这就是一种“内容”与“表现形式”对应关系.在网页上,也同样存在着这样的对应关系,例如

web前端css技巧整理

"熟能生巧"这一词大家并不陌生吧,在学习web前端的时候,我们也需要做到这一点才能提高我们的工作效率等等.今天在网上发现了一篇css基础教程(http://www.maiziedu.com/course/web/421-5342/)文章,我觉得非常的有用,于是就分享给大家,这些技巧能让你更加专业. 使用:not()去除导航上不需要的边框 为body添加行高 垂直居中任何元素 逗号分离的列表 使用负nth-child选择元素 使用SVG图标 文本显示优化 在纯CSS幻灯片上使用max-h

30个最常用css选择器解析(转自大范甘迪)

你也许已经掌握了id.class.后台选择器这些基本的css选择器.但这远远不是css的全部.下面向大家系统的解析css中30个最常用的选择器,包括我们最头痛的浏览器兼容性问题.掌握了它们,才能真正领略css的巨大灵活性. 1. * * { margin: 0; padding: 0; } 星状选择符会在页面上的每一个元素上起作用.web设计者经常用它将页面中所有元素的margin和padding设置为0. *选择符也可以在子选择器中使用. #container * { border: 1px