zoukankan      html  css  js  c++  java
  • css选择器

    1.元素选择符

    选择符

    说明

    用法

    Css版本

    *

    通配选择符匹配任意html标签

    *{}

    Css2

    .classname

    以class属性包含classname的E对象作为选择符

    .classname{}

    Css1

    #idname

    以唯一标识符id属性等于idname的E对象作为选择符

    #idname{}

    Css1

    E

    以文档语言对象类型(有效的html标签)作为选择符

         h1{},div{},p{}等

          Css1

    元素选择符的几点说明

    1.一般通配符*用于规定浏览器默认的内外边距(margin,padding),这样能对元素更精准定位

    一般用法:

    *{

    margin:0;

    padding:0

    }

    2.元素选择符优先级

    一般 #idname>.classname>E>*

    2.关系选择符

    Selectors
    选择符

    Name
    名称

    CSS Version
    版本

    Description
    简介

    E F

    包含选择符

    CSS1

    选择所有被E元素包含的F元素。

    E>F

    子选择符

    CSS2

    选择所有作为E元素的子元素F。

    E+F

    相邻选择符

    CSS2

    选择紧贴在E元素之后F元素。

    E~F

    兄弟选择符

    CSS3

    选择E元素所有兄弟元素F。

     

    关系选择符需要注意的点

    1.E>F是选择所有作为E子元素的F元素,注意是子元素而不是后代元素(隔代不起作用)

    比如

     

    1是红色的,2是不会有红色效果的

     

     

    <style>
    div[id='mystyle1']>strong{
    
    color:red;
    
    }
    </style>
    <div id='mystyle1'>
    
    <strong>1</strong>
    
    <p><strong>2</strong></p>
    
    </div>

     

    效果:

    1

    2

     

    3.属性选择符


    选择符

    css
    版本


    简介

    E[att]

    CSS2

    选择具有att属性的E元素。

    E[att="val"]

    CSS2

    选择具有att属性且属性值等于val的E元素。

    E[att~="val"]

    CSS2

    选择具有att属性且属性值为一用空格分隔的字词列表,其中一个等于val的E元素。

    E[att^="val"]

    CSS3

    选择具有att属性且属性值为以val开头的字符串的E元素。

    E[att$="val"]

    CSS3

    选择具有att属性且属性值为以val结尾的字符串的E元素。

    E[att*="val"]

    CSS3

    选择具有att属性且属性值为包含val的字符串的E元素。

    E[att|="val"]

    CSS2

    选择具有att属性且属性值为以val开头并用连接符"-"分隔的字符串的E元素。

     

     

    注意E[att~="val"]与E[att|="val"]区别

    E[att~="val"]为具有属性att且属性为一个用空格分隔的字词列表

    比如

    Div[class~=’a’]就可以对应

    <div class=’b c1 a ’></div>

    E[att|="val"]

    Div[class|=’a’] 对应

    <div class=’a-b-c’></div>

    注意必须以a开头

     

    4.伪类选择符


    选择符

    CSS 
    版本

    Description
    简介

    E:link

    CSS1

    设置超链接a在未被访问前的样式。

    E:visited

    CSS1

    设置超链接a在其链接地址已被访问过时的样式。

    E:hover

    CSS1/2

    设置元素在其鼠标悬停时的样式。

    E:active

    CSS1/2

    设置元素在被用户激活(在鼠标点击与释放之间发生的事件)时的样式。

    E:focus

    CSS1/2

    设置元素在成为输入焦点(该元素的onfocus事件发生)时的样式。

    E:lang()

    CSS2

    匹配使用特殊语言的E元素。

    E:not(s)

    CSS3

    匹配不含有s选择符的元素E。

    E:root

    CSS3

    匹配E元素在文档的根元素。

    E:first-child

    CSS2

    匹配父元素的第一个子元素E。

    E:last-child

    CSS3

    匹配父元素的最后一个子元素E。

    E:only-child

    CSS3

    匹配父元素仅有的一个子元素E。

    E:nth-child(n)

    CSS3

    匹配父元素的第n个子元素E。

    E:nth-last-child(n)

    CSS3

    匹配父元素的倒数第n个子元素E。

    E:first-of-type

    CSS3

    匹配同类型中的第一个同级兄弟元素E。

    E:last-of-type

    CSS3

    匹配同类型中的最后一个同级兄弟元素E。

    E:only-of-type

    CSS3

    匹配同类型中的唯一的一个同级兄弟元素E。

    E:nth-of-type(n)

    CSS3

    匹配同类型中的第n个同级兄弟元素E。

    E:nth-last-of-type(n)

    CSS3

    匹配同类型中的倒数第n个同级兄弟元素E。

    E:empty

    CSS3

    匹配没有任何子元素(包括text节点)的元素E。

    E:checked

    CSS3

    匹配用户界面上处于选中状态的元素E。(用于input type为radio与checkbox时)

    E:enabled

    CSS3

    匹配用户界面上处于可用状态的元素E。

    E:disabled

    CSS3

    匹配用户界面上处于禁用状态的元素E。

    E:target

    CSS3

    匹配相关URL指向的E元素。

    @page:first

    CSS2

    设置页面容器第一页使用的样式。仅用于@page规则

    @page:left

    CSS2

    设置页面容器位于装订线左边的所有页面使用的样式。仅用于@page规则

    @page:right

    CSS2

    设置页面容器位于装订线右边的所有页面使用的样式。仅用于@page规则

     

     

    E:focus实例:

    代码:

    <style><!--
    h1{font-size:16px;}
    input{
        border-radius:7px;
        }
    ul{list-style:none;margin:0;padding:0;}
    input:focus{background:#f6f6f6;color:#f60;border:1px solid #f60;outline:none;}
    input[value='search']:focus{
        background:gray;color:white;border:1px solid black;
        width:400px;
    }
    --></style>
    <h1>请聚焦到以下输入框</h1>
    <form action="#">
    <ul>
    <li><input type="text" value="姓名" /></li>
    <li><input type="text" value="单位" /></li>
    <li><input type="text" value="search" /></li>
    </ul>
    </form>

    效果:

    请聚焦到以下输入框

    • E:not(s)代码演示
    • <style>
      #result2 p:not(.abc){color:red;}
      </style>
      
      <div id='result2'>
      <p class="abc">否定伪类选择符 E:not()</p>
      <p id="abc">否定伪类选择符 E:not()</p>
      <p class="abcd">否定伪类选择符 E:not()</p>
      <p>否定伪类选择符 E:not()</p>
      </div>

       效果:

    否定伪类选择符 E:not()

    否定伪类选择符 E:not()

    否定伪类选择符 E:not()

    否定伪类选择符 E:not()

  • 相关阅读:
    [leetcode]397. Integer Replacement
    [LeetCode]396. Rotate Function
    [leetcode]633. Sum of Square Numbers
    [LeetCode]367. Valid Perfect Square判断完全平方数
    [LeetCode]319. Bulb Switcher灯泡开关
    [LeetCode]313. Super Ugly Number超级丑数,丑数系列看这一道就行了
    [LeetCode]231. Power of Two判断是不是234的幂
    使用导入外部样式文件方式
    使用内部样式
    使用链接外部样式文件方式
  • 原文地址:https://www.cnblogs.com/HKUI/p/3244779.html
Copyright © 2011-2022 走看看