Table of Contents
CSS之派生选择器(上下文选择器)
Home Web Front-end Front-end Q&A There are several derived selectors in css

There are several derived selectors in css

Dec 29, 2021 pm 03:55 PM
css

css中的派生选择器有3种:1、后代选择器,语法“E F{样式代码}”;2、子元素选择器,语法“E > F {样式代码}”;3、相邻兄弟选择器,语法“E + F {样式代码}”。

There are several derived selectors in css

本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。

CSS之派生选择器(上下文选择器)

选择器(selector)是CSS里面非常重要地一部分知识。

根据我暂时浅薄地理解,CSS就是对一份HTML代码里面的元素进行运用各种样式。

所以,第一步就是要准确地定位你想要运用样式的元素。

CSS里面通过各种选择器来定位元素。 CSS里面选择器有很多种,今天就只想说说 “派生选择器”。

一听“派生选择器”这个名字,我真心做不到见名知义地感觉它是什么选择器。一看英文名叫“contextual selectors” ,如果直译就叫“上下文选择器”。虽然名字不文雅,但是我更偏向这个名字。

contexual selector是通过依据元素在其位置的上下文关系来定义样式的。

上下文选择器的情况有三种:后代选择器,子元素选择器,相邻兄弟选择器。 

后代选择器(descendant selector)

eg:

HTML代码:

    <h1>This is a<em>important</em>heading</h1>
Copy after login

CSS代码: 

    h1 em {color:red;}
Copy after login

语法规则是 h1 和 em 之间有一个空格。那么这一条CSS代码就会运用于包含在

标签内的所有元素。
关于后代选择器,很重要的一点是第一个参数和第二个参数之间的代数是可以无限的。

eg:

HTML代码:

<ul> 
    <li>
        <ul>
            <li>
                <em>This will be styled.</em>
             </li>
        </ul>
    </li>
    <li>
        <em>This will be styled too.</em>
    </li>
</ul>
Copy after login

CSS代码:

ul em{color:red;}
Copy after login

以上css的样式会运用于HTML代码中两处橘色的元素。

子选择器(child selector) 

 子选择器只会选择某个元素的子元素,而不会扩大到任意的后代元素。

eg:

HTML代码:

<h1>This is <strong>This will be styled.</strong> important.</h1>
<h1>This is <em>really <strong>This will not be styled.</strong></em> important.</h1>
Copy after login

CSS代码:

h1 > strong {color:red;}
Copy after login

语法规则是h1和strong之间会有一个“>”符号。而这个“>”和前面的h1或者是后面的strong之间的空格都是可有可无的。

在以上的例子中,第一行HTML代码里,元素是

的子元素,所有h1 > strong这个选择器会选择到它。

第二行HTML代码里, 不是

的子元素,而是

的孙子,所有h1 > strong这个选择器不会选择到它。

相邻兄弟选择器(Adjacent sibling selector)

相邻兄弟选择器会选择某一元素紧随其后的元素,但是前提是他们拥有相同的父级。 

eg:

HTML代码:

<h1>
    <h2>This is a heading<h2>
    <strong>This will be styled.</strong>
    <strong>This will not be styled.</strong>
<h1>
Copy after login

CSS代码:

h2 + strong {color:red;}
Copy after login

语法规则是h2和strong之间有一个“+”,“+”和前面的h1或者后面的strong之间的空格都是可有可无的。

在 以上例子中,第一个strong紧邻着h2并且他们拥有相同的父级(h1),所以h2 + strong会选择到第一个而不会选到第二个.

eg2:

HTML代码:

<p> 
    <ul>     
        <li>List item 1</li> 
        <li>List item 2</li> 
        <li>List item 3</li> 
    </ul> 
     <ol> 
         <li>List item 1</li> 
         <li>List item 2</li> 
         <li>List item 3</li> 
    </ol> 
</p>
Copy after login

CSS代码:

li + li {color:red;}
Copy after login

在以上的例子中li+li是选择紧挨着li后面的第一个

  • ,所以第一个
  • 不会被选择;而第二个
  • 是紧挨着第一个li的,所有会被选择;第三个
  • 是紧挨着第二个
  • 的,也会被选择。

    (学习视频分享:css视频教程

    The above is the detailed content of There are several derived selectors in css. For more information, please follow other related articles on the PHP Chinese website!

  • Statement of this Website
    The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

    Hot AI Tools

    Undresser.AI Undress

    Undresser.AI Undress

    AI-powered app for creating realistic nude photos

    AI Clothes Remover

    AI Clothes Remover

    Online AI tool for removing clothes from photos.

    Undress AI Tool

    Undress AI Tool

    Undress images for free

    Clothoff.io

    Clothoff.io

    AI clothes remover

    Video Face Swap

    Video Face Swap

    Swap faces in any video effortlessly with our completely free AI face swap tool!

    Hot Article

    Roblox: Bubble Gum Simulator Infinity - How To Get And Use Royal Keys
    3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
    Nordhold: Fusion System, Explained
    3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
    Mandragora: Whispers Of The Witch Tree - How To Unlock The Grappling Hook
    3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

    Hot Tools

    Notepad++7.3.1

    Notepad++7.3.1

    Easy-to-use and free code editor

    SublimeText3 Chinese version

    SublimeText3 Chinese version

    Chinese version, very easy to use

    Zend Studio 13.0.1

    Zend Studio 13.0.1

    Powerful PHP integrated development environment

    Dreamweaver CS6

    Dreamweaver CS6

    Visual web development tools

    SublimeText3 Mac version

    SublimeText3 Mac version

    God-level code editing software (SublimeText3)

    Hot Topics

    Java Tutorial
    1665
    14
    PHP Tutorial
    1269
    29
    C# Tutorial
    1249
    24
    How to use bootstrap in vue How to use bootstrap in vue Apr 07, 2025 pm 11:33 PM

    Using Bootstrap in Vue.js is divided into five steps: Install Bootstrap. Import Bootstrap in main.js. Use the Bootstrap component directly in the template. Optional: Custom style. Optional: Use plug-ins.

    Understanding HTML, CSS, and JavaScript: A Beginner's Guide Understanding HTML, CSS, and JavaScript: A Beginner's Guide Apr 12, 2025 am 12:02 AM

    WebdevelopmentreliesonHTML,CSS,andJavaScript:1)HTMLstructurescontent,2)CSSstylesit,and3)JavaScriptaddsinteractivity,formingthebasisofmodernwebexperiences.

    The Roles of HTML, CSS, and JavaScript: Core Responsibilities The Roles of HTML, CSS, and JavaScript: Core Responsibilities Apr 08, 2025 pm 07:05 PM

    HTML defines the web structure, CSS is responsible for style and layout, and JavaScript gives dynamic interaction. The three perform their duties in web development and jointly build a colorful website.

    How to write split lines on bootstrap How to write split lines on bootstrap Apr 07, 2025 pm 03:12 PM

    There are two ways to create a Bootstrap split line: using the tag, which creates a horizontal split line. Use the CSS border property to create custom style split lines.

    How to insert pictures on bootstrap How to insert pictures on bootstrap Apr 07, 2025 pm 03:30 PM

    There are several ways to insert images in Bootstrap: insert images directly, using the HTML img tag. With the Bootstrap image component, you can provide responsive images and more styles. Set the image size, use the img-fluid class to make the image adaptable. Set the border, using the img-bordered class. Set the rounded corners and use the img-rounded class. Set the shadow, use the shadow class. Resize and position the image, using CSS style. Using the background image, use the background-image CSS property.

    How to set up the framework for bootstrap How to set up the framework for bootstrap Apr 07, 2025 pm 03:27 PM

    To set up the Bootstrap framework, you need to follow these steps: 1. Reference the Bootstrap file via CDN; 2. Download and host the file on your own server; 3. Include the Bootstrap file in HTML; 4. Compile Sass/Less as needed; 5. Import a custom file (optional). Once setup is complete, you can use Bootstrap's grid systems, components, and styles to create responsive websites and applications.

    How to resize bootstrap How to resize bootstrap Apr 07, 2025 pm 03:18 PM

    To adjust the size of elements in Bootstrap, you can use the dimension class, which includes: adjusting width: .col-, .w-, .mw-adjust height: .h-, .min-h-, .max-h-

    How to use bootstrap button How to use bootstrap button Apr 07, 2025 pm 03:09 PM

    How to use the Bootstrap button? Introduce Bootstrap CSS to create button elements and add Bootstrap button class to add button text

    See all articles