Aujourd'hui, j'ai fini de regarder la partie du sélecteur complexe CSS3 dans la vidéo, et trions les points de connaissances que j'ai appris.
1. Sélecteurs frères et sœurs : au même niveau de position, peuvent être appelés éléments frères
a, Sélecteurs frères et sœurs adjacents : suivant
Immédiatement après [l'élément actuel] (un), l'élément spécifiant le sélecteur
Syntaxe : Utilisez "+" comme conjugateur
par exemple : p+p ->p immédiatement après p Élément
<!-- demo.html --> <html> <head> <title></title> </head> <body> <p>这是第一个段落</p> <div id="d1">这是一个div</div> <span>这是一个span</span> <p class="p1">这是第二个段落</p> <b>Hello World</b> <p class="p2">这是第三个段落</p> </body> </html> /*demo.css*/ div+p{ background: yellow; } #d1+p{ background: red; } span+.p1{ background: blue; }
b, Sélecteur frère universel : next_all
correspond à [tous les éléments frères suivants d'un élément qui satisfont au sélecteur spécifié
Syntaxe : utilisez "~" comme conjugateur
par exemple : p~p{} -> Faire correspondre tous les p après p
2, Sélecteur d'attribut : Utiliser des éléments Les attributs attachés sont utilisés dans les sélecteurs comme conditions pour sélection d'éléments
Syntaxe : [contenu lié à l'attribut]
par exemple : [id] -> Tous les éléments avec des attributs id
p[id] ->p élément avec un attribut id
a.[ id],p[id]
b.p[id][class] ->Avoir à la fois l'élément id et class p
c, p[id="p1"] ->p élément avec la valeur d'identifiant "p1"
d, p[class~="value"]
e, p[class^ ="b"] -> Correspond à p balises dont la valeur d'attribut de classe commence par b
f, p[class*="b"] -> Correspond à la balise p dont la valeur d'attribut de classe contient b
g, p[class$="b"] -> Correspond à la balise p dont la valeur d'attribut de classe se termine avec b
<!-- demo.html --> <html> <head> <title></title> </head> <body> <p class="clear p1 myself"> 这是第四个段落 </p> <div class="userContent"> 文本内容 </div> </body> </html> /*demo.css*/ p[class]{ color: #e4393c; } p[class~='p1']{ background-color: #cd2c2d; color: #fff; } div[class ^= "us"]{ background-color: #bfb; } div[class$="t"]{ background-color: #bfb; color: #333; }
3. Pseudosélecteur de classe
a. CiblePseudo-classe : Mettre en surbrillance le HTML actif Ancre
Syntaxe : :target
b. Element State Pseudo-classe : principalement utilisée sur les éléments de formulaire
1. :enabled -> Correspond à tous les éléments activés
2. :disabled -> ; Correspond à tous les éléments désactivés
3. :checked -> Correspond à l'élément de formulaire sélectionné (applicable uniquement à la case à cocher, radio)
c. Pseudo-classe structurelle
1. :first-child -> Correspond au premier élément enfant 2. :last-child -> Correspond au dernier élément enfant appartenant à son élément parent
3. :empty -> éléments enfants (le contenu du texte ou les espaces sont également comptés comme éléments enfants)
4. :only-child -> Correspond au seul élément enfant
qui appartient à son élément parent d. sélecteurs non spécifiés
Syntaxe : :not(selector)
<!-- demo01.html 目标伪类 --> <html> <head> <title></title> </head> <body> <a href="#Tom">猫和老鼠(Tom and Jerry)</a> <a href="#Atongmu">铁臂阿童木</a> <a href="#BlackCat">黑猫警长</a> <br> <a name="Tom">第一部:Tom and Jerry</a> <p style="height: 500px;">Tom and Jerry</p> <div id="Atongmu" style="height: 500px;">我是阿童木</div> <div id="BlackCat" style="height: 500px;">I am Mr Black Cat</div> </body> </html> /*demo01.css*/ a:target,div:target{ background-color: #bfb; font-size: 20pt; }
<!-- demo02.html 结构伪类 --> <html> <head> <title></title> </head> <body> <div id="d1"></div> <div id="d2"> <p>This is a p</p> </div> <div id="d3"> This id d3 </div> <div id="d4"> <b>first</b> <b>second</b> <b>third</b> <b>last</b> </div> </body> </html> /*demo02.css*/ div{ width: 100px; height: 100px; } b{ display: block; } div:empty{ background-color: #bfb; } p:only-child{ background-color: #fbf; } b:first-child{ font-size: 2em; color: #fbb; } b:last-child{ font-size: 3em; font-weight: normal; color: #bbf; }
<!-- demo03.html 伪元素状态伪类 --> <html> <head> <title></title> </head> <body> 用户名称:<input type="text"><br> 用户昵称:<input type="text" disabled value="请输入您的昵称"> <br> 性别:<input type="radio" name="rdoGender">男 <input type="radio" name="rdoGender">女 </body> </html> /*demo03.css*/ input:enabled{ color: red; } input:disabled{ border: 1px solid #f00; } input[name=rdoGender]:checked{ background-color: #bfb; }
<!-- demo04.html 否定伪类 --> <html> <head> <title></title> </head> <body> <div> 用户名称:<input type="text"><br> 用户密码:<input type="password"><br> <input type="submit" value="提交"> <input type="button" value="按钮"> </div> </body> </html> /*demo04.css*/ input:not(:last-child){ border: 1px solid #f00; }4. Pseudo
sélecteur d'élément : Tous ceux qui correspondent sont du contenu textuel a.
: première lettre - > Correspond au premier caractère b,
: première ligne -> Correspond à la première ligne Les deux sélecteurs ci-dessus , les éléments en ligne ne sont pas valides, les blocs en ligne et les niveaux de bloc peuvent être
c, ::selection -> Style de texte sélectionné par les utilisateurs de compensation européens (Firefox semble incompatible)
<!-- demo.html 为元素选择器 --> <html> <head> <title></title> </head> <body> <p> 风风雨雨适合于独行,且手中无伞,不打伞有不打伞的好处。湿是我的湿,冷是我的冷,即便化作雨点般的小,那么小也是我的小。 </p> <span> 风风雨雨适合于独行,且手中无伞,不打伞有不打伞的好处。湿是我的湿,冷是我的冷,即便化作雨点般的小,那么小也是我的小。 </span> </body> </html> /*demo.css*/ p{ width: 200px; border: 1px solid #bfb; margin: 10% auto; text-indent: 5px; } span{ /*float: right;*/ /*display: inline-block;*/ position: absolute; top: 300px; left: 500px; } p:first-letter{ font-size: 20pt; color: #fbb; } p:first-line{ font-style: italic; } span:first-line{ font-style: italic; background-color: #ffb; } p::selection{ background-color: #bbf; color: #fbf; }Ce qui précède est tout ce que j'ai appris dans la vidéo. S'il y a des erreurs ou des lacunes, j'espère que les téléspectateurs feront des suggestions et des corrections en temps opportun. . Aujourd'hui, c'est le deuxième jour depuis que j'ai ouvert mon blog. C'est le premier article que j'écris ici uniquement comme mes propres notes d'étude, dans l'espoir d'enregistrer ma croissance.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Les curseurs personnalisés avec CSS sont excellents, mais nous pouvons faire passer les choses au niveau supérieur avec JavaScript. À l'aide de JavaScript, nous pouvons passer entre les états du curseur, placer du texte dynamique dans le curseur, appliquer des animations complexes et appliquer des filtres.

Les animations CSS interactives avec des éléments se ricochent semblent plus plausibles en 2025. Bien qu'il soit inutile de mettre en œuvre Pong dans CSS, la flexibilité et la puissance croissantes de CSS renforcent le soupçon de Lee selon lequel un jour, ce sera un jour

Conseils et astuces sur l'utilisation de la propriété CSS Back-Filter pour styliser les interfaces utilisateur. Vous apprendrez à superposer des filtres en toile de fond entre plusieurs éléments et à les intégrer à d'autres effets graphiques CSS pour créer des conceptions élaborées.

Eh bien, il s'avère que les fonctionnalités d'animation intégrées de SVG n'ont jamais été obsolètes comme prévu. Bien sûr, CSS et JavaScript sont plus que capables de porter la charge, mais il est bon de savoir que Smil n'est pas mort dans l'eau comme précédemment

Yay, laissez-le saut pour le wat-wrap: joli atterrissage dans la technologie safari aperçu! Mais méfiez-vous qu'il est différent de la façon dont il fonctionne dans les navigateurs de chrome.

Cette mise à jour de CSS-Tricks met en évidence des progrès significatifs dans l'Almanac, des apparitions de podcast récentes, un nouveau guide CSS Counter et l'ajout de plusieurs nouveaux auteurs contribuant un contenu précieux.

La plupart du temps, les gens présentent la fonctionnalité de Tailwind avec l'un des utilitaires à propriété unique de Tailwind (qui modifie une seule déclaration CSS). Lorsqu'il est présenté de cette façon, @Apply ne semble pas du tout prometteur. So évidence

Le déploiement comme un idiot se résume à un décalage entre les outils que vous utilisez pour déployer et la récompense en complexité réduite par rapport à la complexité ajoutée.


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Dreamweaver Mac
Outils de développement Web visuel

VSCode Windows 64 bits Télécharger
Un éditeur IDE gratuit et puissant lancé par Microsoft

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Navigateur d'examen sécurisé
Safe Exam Browser est un environnement de navigation sécurisé permettant de passer des examens en ligne en toute sécurité. Ce logiciel transforme n'importe quel ordinateur en poste de travail sécurisé. Il contrôle l'accès à n'importe quel utilitaire et empêche les étudiants d'utiliser des ressources non autorisées.

Dreamweaver CS6
Outils de développement Web visuel
