
What are CSS selectors?
<p>CSS selectors are patterns used to select elements on a web page for styling. They can locate elements based on attributes, classes, IDs, etc.Commonly used CSS selectors
<p>Here are some commonly used selectors:-
Element Selector: Targets all elements of a specific type. For example, to style all
<div>
elements:
<code>div { border: 1px solid black; }</code>
- Class selector: Selects elements with a specific class. If we have a class called "text-large":
<code>.text-large { font-size: 20px; }</code>
- ID selector: Targets elements with a specific ID. For element with ID "header":
<code>#header { background-color: blue; }</code>
- Attribute selector: used for elements with specific attribute values. For example, to style all external links (using the "rel" attribute):
<code>a[rel="external"] { color: red; }</code>
Uncommon but useful CSS selectors
Child selector (>)
<p>It locates the direct child elements of the element. For parent elements with class "container":<code>.container > p { margin-left: 10px; }</code>
Descendant selector ( )
<p>This will select all descendants within the element. If we have a div with the ID "main" and want to style all<span>
elements inside it:
<code>#main span { color: green; }</code>
Adjacent sibling selector ( )
<p>Selects an element that immediately follows another specific element. For example, after the<h3>
element, if there is a <p>
element:
<code>h3 + p { font-weight: bold; }</code>
Universal sibling selector (~)
<p>Locate the sibling element of another element, not necessarily adjacent. If we have a div with class "item" and want to style all subsequent sibling elements with class "detail":<code>.item ~ .detail { padding-top: 5px; }</code>
Attribute selector with partial matching (^=, $=, *=)
- Starts with (^=): To set the style of all image sources starting with "http://miracleart.cn/link/e2e1cbe72ab1192e395c35295763982a":
<code>img[src^="http://miracleart.cn/link/e2e1cbe72ab1192e395c35295763982a"] { border-radius: 5px; }</code>
- ends with ($=): For all forms whose methods end with "post":
<code>form[method$="post"] { background-color: #f0f0f0; }</code>
- *contains (=)**: To style all links that contain "product" in their href attribute:
<code>a[href*="product"] { text-decoration: underline; }</code>
Negative pseudo-class (:not())
<p>It selects elements that do not match a certain selector. For example, all elements except elements with class "hidden":<code>:not(.hidden) { display: block; }</code>
Target pseudo-class (:target)
<p>When the URL fragment matches the ID of the element. For the part of the URL with the ID "contact":<code>div { border: 1px solid black; }</code>
Language pseudo-class (:lang())
<p>Locate elements based on language attributes. For elements with lang="en-US":<code>.text-large { font-size: 20px; }</code>
has pseudo-class (:has())
The <p>:has()
pseudo-class is used to select elements that contain specific child elements or descendant elements. For example, to style a div containing an image:
<code>#header { background-color: blue; }</code>
Selection pseudo-class (::selection)
<p>This pseudo-class allows you to style the portion of text selected by the user. For example, when the user selects some text in a paragraph:<code>a[rel="external"] { color: red; }</code>
Conclusion
<p>These uncommon CSS selectors provide additional ways to precisely position and style elements. They enhance the flexibility and functionality of CSS code, making it more powerful and efficient at creating visually appealing and well-structured web pages. <p>For more information, please visit http://miracleart.cn/link/8dacd3d8b9d2cd20eb244b5f745ea88eThe above is the detailed content of Useful CSS Selectors You Might Not Know. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

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

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

There are three ways to selectively include CSS on a specific page: 1. Inline CSS, suitable for pages that are not frequently accessed or require unique styles; 2. Load external CSS files using JavaScript conditions, suitable for situations where flexibility is required; 3. Containment on the server side, suitable for scenarios using server-side languages. This approach can optimize website performance and maintainability, but requires balance of modularity and performance.

Flexboxisidealforone-dimensionallayouts,whileGridsuitstwo-dimensional,complexlayouts.UseFlexboxforaligningitemsinasingleaxisandGridforprecisecontroloverrowsandcolumnsinintricatedesigns.

The HTML popover attribute transforms elements into top-layer elements that can be opened and closed with a button or JavaScript. Popovers can be dismissed a number of ways, but there is no option to auto-close them. Preethi has a technique you can u

CSS blocks page rendering because browsers view inline and external CSS as key resources by default, especially with imported stylesheets, header large amounts of inline CSS, and unoptimized media query styles. 1. Extract critical CSS and embed it into HTML; 2. Delay loading non-critical CSS through JavaScript; 3. Use media attributes to optimize loading such as print styles; 4. Compress and merge CSS to reduce requests. It is recommended to use tools to extract key CSS, combine rel="preload" asynchronous loading, and use media delayed loading reasonably to avoid excessive splitting and complex script control.

In the following tutorial, I will show you how to create Lottie animations in Figma. We'll use two colorful designs to exmplify how you can animate in Figma, and then I'll show you how to go from Figma to Lottie animations. All you need is a free Fig

We put it to the test and it turns out Sass can replace JavaScript, at least when it comes to low-level logic and puzzle behavior. With nothing but maps, mixins, functions, and a whole lot of math, we managed to bring our Tangram puzzle to life, no J

ThebestapproachforCSSdependsontheproject'sspecificneeds.Forlargerprojects,externalCSSisbetterduetomaintainabilityandreusability;forsmallerprojectsorsingle-pageapplications,internalCSSmightbemoresuitable.It'scrucialtobalanceprojectsize,performanceneed

No,CSSdoesnothavetobeinlowercase.However,usinglowercaseisrecommendedfor:1)Consistencyandreadability,2)Avoidingerrorsinrelatedtechnologies,3)Potentialperformancebenefits,and4)Improvedcollaborationwithinteams.
