search
HomeWeb Front-endCSS TutorialThe difference between one colon (:) and two colons (::) in CSS

The difference between one colon (:) and two colons (::) in CSS

Dec 30, 2020 am 09:27 AM
cssPseudo elementPseudo class

The difference between one colon (:) and two colons (::) in CSS

Recommended: css video tutorial

One colon is a pseudo-class, two colons are pseudo-elements

Pseudo classes can assign styles independently of the elements of the document and can be assigned to any element. They are logically similar to functional classes, but they are predefined and do not exist in the document. The expression methods are different in the tree, so they are called pseudo-classes.

The content controlled by a pseudo element is the same as the content controlled by an element, but the pseudo element does not exist in the document tree and is not a real element, so it is called a pseudo element.

Pseudo classes include: :first-child , :link:, visited, :hover:, active:focus, :lang

Pseudo elements include: :first-line, :first-letter, :before, :after (in CSS2 compiled by Su Chen Xiaoyu .0 In the Chinese manual, :first-line and :first-letter are listed as pseudo-classes, which should be a misunderstanding)

Reminder, if your website only needs to be compatible with webkit, firefox , opera and other browsers, it is recommended to use double colon writing method for pseudo elements. If you have to be compatible with IE browser, it is safer to use CSS2 single colon writing method

The difference between pseudo-classes and pseudo-elements:

##Pseudo-class

The pseudo-class selection element is based on the current state of the element, or the current characteristics of the element, rather than static signs such as the element's id, class, and attributes. Since the state changes dynamically, when an element reaches a specific state, it may get a pseudo-class style; when the state changes, it will lose this style. It can be seen from this that its function is somewhat similar to that of class, but it is based on abstraction outside of the document, so it is called a pseudo class.

:link

pseudo-class will be applied to links that have not been visited, the same as :visited Mutually exclusive.

:hover

Pseudo class will be applied to the element that the mouse pointer is hovering over.

:active

Pseudo class will be applied to activated elements, such as clicked links, pressed button etc.

:visited

pseudo-class will be applied to links that have been visited, with :linkMutually exclusive.

:focus

Pseudo class will be applied to the element that has keyboard input focus.

:first-child

The pseudo-class will be applied when the element first appears on the page.

:lang

pseudo-class will be applied to elements with the specified lang.

Pseudo-elements

#Different from pseudo-classes that target elements in a special state, pseudo-elements target specific content in the element. When operating, the level it operates is one level deeper than that of pseudo-classes, and therefore its dynamic nature is much lower than that of pseudo-classes. In fact, the purpose of designing pseudo-elements is to select the first letter (letter) and first line of element content, and select the front or back of certain content, which is something that ordinary selectors cannot do. The content it controls is actually the same as the element, but it is only an abstraction based on the element and does not exist in the document, so it is called a pseudo element.

::first-letter

The style of the pseudo-element will be applied to the first letter of the element's text ( mother).

::first-line

The style of the pseudo-element will be applied to the first line of the element's text.

::before

Add new content at the front of the element content.

::after

Add new content at the end of the element content.

::before and : :after is usually used with CSS content generation.

For more programming-related knowledge, please visit: Programming Teaching! !

The above is the detailed content of The difference between one colon (:) and two colons (::) in CSS. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:csdn. If there is any infringement, please contact admin@php.cn delete
Show Search Button when Search Field is Non-EmptyShow Search Button when Search Field is Non-EmptyApr 15, 2025 am 10:00 AM

I think the :placeholder-shown selector is tremendously cool. It allows you to select the placeholder of an input () when that placeholder is present.

The Trick to Animating the Dot on the Letter 'i'The Trick to Animating the Dot on the Letter 'i'Apr 15, 2025 am 09:55 AM

Here’s the trick: by combining the Turkish letter "ı" and the period "." we can create something that looks like the letter "i," but is made from two separate

Weekly Platform News: WebAPK Limited to Chrome, Discernible Focus Rectangles, Modal Window APIWeekly Platform News: WebAPK Limited to Chrome, Discernible Focus Rectangles, Modal Window APIApr 15, 2025 am 09:53 AM

In this week's roundup: "Add to home screen" has different meanings in Android, Chrome and Edge add some pop to focus rectangles on form inputs, and how

Making a Chart? Try Using Mobx State Tree to Power the DataMaking a Chart? Try Using Mobx State Tree to Power the DataApr 15, 2025 am 09:49 AM

Who loves charts? Everyone, right? There are lots of ways to create them, including a number of libraries. There’s D3.js, Chart.js, amCharts, Highcharts, and

Blocking Third-Party Hands from the Cookie JarBlocking Third-Party Hands from the Cookie JarApr 15, 2025 am 09:48 AM

Third-party cookies are set on your computer from domains other than the one that you're actually on right now. For example, if I log into css-tricks.com,

Ten-Ton WidgetsTen-Ton WidgetsApr 15, 2025 am 09:43 AM

At a recent conference talk (sorry, I forget which one), there was a quick example of poor web performance in the form of a third-party widget. The example

Recipes for Performance Testing Single Page Applications in WebPageTestRecipes for Performance Testing Single Page Applications in WebPageTestApr 15, 2025 am 09:42 AM

WebPageTest is an online tool and an Open Source project to help developers audit the performance of their websites. As a Web Performance Evangelist at

Stop Animations During Window ResizingStop Animations During Window ResizingApr 15, 2025 am 09:40 AM

Say you have page that has a bunch of transitions and animations on all sorts of elements. Some of them get triggered when the window is resized because they

See all articles

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

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
4 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
1 months agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

WebStorm Mac version

WebStorm Mac version

Useful JavaScript development tools