CSS 学习笔记之CSS Selector

时间:2017-08-15

用于定义 DOM 中所有元素的共同样式,常见使用方法如下:

<div class="nav">
    <div>
        <div class="nav-tools">
        
        </div>
    </div>
</div>

<style>
    .nav * {
        margin: 0;
    }
</style>

如果要重置默认样式的话,不建议使用通配选择器

[attribute]——属性选择器

用于定义元素包含属性为attribute的元素的样式,常见使用方法如下:

<div class="nav">
    <div>
        <div class="nav-tools">
            <ul>
                <li active>Menu</li>
                <li>Index</li>
            </ul>
        </div>
    </div>
</div>

<style>
    li[active] {
        color: red;
    }
</style>

[attribute=“value”]——属性选择器

用于定义元素属性的值为指定的值样式,常见使用方法如下:

<div class="nav">
    <div>
        <div class="nav-tools">
            <ul>
                <li active="active">Menu</li>
                <li active>Index</li>
            </ul>
        </div>
    </div>
</div>

<style>
    li[active="active"] {
        color: red;
    }
</style>

[attribute~="value"]——属性选择器

用于定义属性中包含指定值且以空格来分隔属性值得元素,常见使用方法如下:

<div class="nav">
    <div>
        <div class="nav-tools">
            <ul>
                <li active="test active">Menu</li>
                <li active="active-test">Index</li>
            </ul>
        </div>
    </div>
</div>

<style>
    li[active~="active"] {
        color: red;
    }
</style>

如上所示,只有第一个 li 的前景色会被定义为红色!

[attribute|="value"]——属性选择器

用于定义属性中包含指定值且以连字符(-)链接的属性值,常见使用方法如下:

<div class="nav">
    <div>
        <div class="nav-tools">
            <ul>
                <li active="test active">Menu</li>
                <li active="active-test">Index</li>
            </ul>
        </div>
    </div>
</div>

<style>
    li[active|="active"] {
        color: red;
    }
</style>

如上所示:只有第二个 li 的前景色会被定义为红色!

:first-child——结构伪类选择器

用于定义元素的第一个元素的样式,常见使用方式如下:

<div class="nav">
    <div>
        <div class="nav-tools">
            <ul>
                <li active="test active">Menu</li>
                <li active="active-test">Index</li>
            </ul>
        </div>
    </div>
</div>

<style>
    li:first-child {
        color: red;
    }
</style>

注意 :first-child 是作用于同级,且相同标签的第一个元素。如上所示,如果要定义第一个 li 的样式,那么久需要使用 li:first-child,而不是 ul:first-child!

:lang(en)

用于定义属性为 lang=“en” 的元素样式,常见使用方法如下:

<div>
    <p lang="en">Hello World</p>
</div>

<style>
    p:lang(en) {
        color: red;
    }
</style>

::before

用于定义元素之前的内容和样式,常见使用方法如下:

<div>
    <a>World</a>
</div>

<style>
    a::before {
        content: "Hello ";
    }
</style>

::after

用于定义元素之后的内容和样式,常见使用方法如下:

<div>
    <a>Hello</a>
</div>

<style>
    a::after {
        content: "World";
    }
</style>

div > p

  • 共5页:
  • 上一页
  • 2/5
  • 下一页
  • 上一篇:CSS+HTML自定义checkbox效果的实例代码 下一篇:详解CSS3中强大的filter(滤镜)属性

    相关文章

    最新文章