Partage de technologie

CSS [Tutoriel pratique] (dernière version 2024)

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Introduction au CSS

CSS estFeuilles de style en cascade(L'abréviation de Cascading Style Sheets) est utilisée pour contrôler avec précision le style des pages HTML afin de mieux afficher les informations graphiques ou de produire une expérience interactive sympa/conviviale.

没有必要让所有浏览器都显示得一模一样的,好的浏览器有更好的显示,糟糕的浏览器就只有普通的显示,这才是对用户更负责任的做法。
  • 1

Le suffixe du fichier CSS est .css

Commentaire

/* 注释的内容 */
  • 1

Trois façons d'ajouter des styles

1. style Styles en ligne

<span style="color: red">红色文字</span>
  • 1

Insérer la description de l'image ici

2. Ajouter via le sélecteur de style CSS

https://blog.csdn.net/weixin_41192489/article/details/140226382

3. Héritage

Les éléments du conteneur obtiendront les styles ajoutés sur le conteneur

  <div style="color: red">
    <p>我是容器内的元素,并没有直接添加样式,但也会变红!</p>
  </div>
  • 1
  • 2
  • 3
  • Les attributs de style de texte sont tous hérités. Ces attributs incluent : la couleur, commençant par text-, commençant par line et commençant par font-.
  • Les attributs de boîte, de positionnement et de mise en page ne peuvent pas être hérités.

Qui décide du style final ?

Comme il existe de nombreuses sources de styles sur les éléments, notamment les styles par défaut du navigateur, les styles en ligne, les styles ajoutés par divers sélecteurs CSS et les styles hérités des éléments parents, le style final sera celui ayant la plus haute priorité parmi de nombreux styles déterminés par. style.

Priorité du style CSS

https://blog.csdn.net/weixin_41192489/article/details/139720467

Les bases essentielles du style

Unité de longueur CSS

https://blog.csdn.net/weixin_41192489/article/details/140236423

Fonctions CSS

https://blog.csdn.net/weixin_41192489/article/details/140318834

modèle de boîte

https://blog.csdn.net/weixin_41192489/article/details/102411612

  • La hauteur et la hauteur de la ligne peuvent ouvrir la boîte, mais l'image d'arrière-plan ne peut pas ouvrir la boîte.

Points à noter sur les éléments en ligne

  • Les éléments en ligne ne peuvent afficher que des marges intérieures et extérieures au début et à la fin et doivent être évités autant que possible. Ne définissez donc pas de marges intérieures et extérieures pour les éléments en ligne.

  • Une fois les éléments en ligne enveloppés, l'affichage des bordures sera empilé et désordonné, alors ne définissez pas de bordures pour les éléments en ligne !

  • Lorsque vous devez ajouter des bordures/marges intérieures et extérieures à un élément en ligne, convertissez-le en boîte en ligne

    display:inline-block
    
    • 1

Quels styles peuvent être ajoutés ?

Style universel

Des styles peuvent être ajoutés à presque tous les éléments HTML.

Largeur hauteur

  • width : La valeur par défaut est la largeur du contenu (pas la largeur de la boîte)
  • height : La valeur par défaut est la hauteur du contenu (pas la hauteur de la boîte)

Grâce au style suivant, vous pouvez modifier le modèle de boîte standard par défaut de l'élément en modèle de boîte IE.

box-sizing:border-box;
  • 1

en ce moment

  • Largeur : La largeur de la boîte (bordure gauche + remplissage gauche + largeur du contenu + remplissage droit + bordure droite)
  • height : hauteur de la boîte (bordure supérieure + remplissage supérieur + hauteur du contenu + remplissage inférieur + bordure inférieure)

Rembourrage

  • Les valeurs négatives ne sont pas prises en charge
  • La valeur en pourcentage, qu'elle soit horizontale ou verticale, est calculée par rapport à la largeur.
padding: 10px;
  • 1

Remplissage : 10 px pour le haut, le bas, la gauche et la droite

padding:10px 5px;
  • 1

Les rembourrages supérieur et inférieur sont de 10 px.

Les rembourrages droit et gauche sont de 5 px

padding:10px 5px 15px;
  • 1

Le remplissage supérieur est de 10 px.

Les rembourrages droit et gauche sont de 5 px

Le rembourrage inférieur est de 15 px

padding:10px 5px 15px 20px;
  • 1

Le remplissage supérieur est de 10 px.

Le remplissage droit est de 5 px.

Le rembourrage inférieur est de 15 px

Le remplissage gauche est de 20 px.

frontière frontière

Les styles associés sont également

  • bordure-rayon-bordure arrondie
  • border-fill bordure-image
  • contourcontour

Voir les détails https://blog.csdn.net/weixin_41192489/article/details/140325106

marge

https://blog.csdn.net/weixin_41192489/article/details/115140348

débordementdébordement

  • visible [Valeur par défaut] Tout le contenu excédentaire sera affiché sans couper ni ajouter de barres de défilement.
  • masqué : masquez la barre de défilement et n'affichez pas le contenu qui dépasse la taille de l'objet, mais il peut toujours être défilé.
  • auto : si le contenu ne dépasse pas, la barre de défilement ne sera pas affichée ; si le contenu dépasse, la barre de défilement sera affichée.
  • défilement : sur la plateforme Windows, les barres de défilement sont toujours affichées, que le contenu dépasse ou non la limite. Sous la plateforme Mac, c'est la même chose que l'attribut auto.

Les conteneurs avec des valeurs de débordement auto et scroll sont des conteneurs roulants (conteneurs avec barres de défilement). Il n'est pas recommandé d'utiliser un remplissage pour leur espace blanc. En raison de problèmes de compatibilité, vous ne pouvez utiliser que la marge inférieure des éléments enfants pour y parvenir. le rembourrage inférieur du conteneur de défilement est blanc.

transparenceopacité

La valeur de l'attribut va de 0,0 (complètement transparent) à 1,0 (complètement opaque). Si elle dépasse la limite de plage de 0 à 1, la valeur finale calculée est la valeur limite.

    opacity: -1;    /* 解析为 0, 完全透明 */
    opacity: 2;     /* 解析为 1, 完全不透明 */
  • 1
  • 2

contexte

https://blog.csdn.net/weixin_41192489/article/details/140301618

shadowbox-ombre

L'ombre ne modifiera pas la taille de la boîte et n'affectera pas la disposition de ses éléments frères. Vous pouvez également définir plusieurs ombres de bordure pour obtenir de meilleurs effets et améliorer l'effet tridimensionnel.

box-shadow: 水平偏移 垂直偏移 模糊程度 阴影大小 阴影颜色(默认值为color的颜色值)  内/外阴影
  • 1
  • Décalage horizontal : valeur positive à droite, valeur négative à gauche.
  • Décalage vertical : valeurs positives vers le bas et valeurs négatives vers le haut.
  • Niveau de flou : ne peut pas être négatif
  • Ombre intérieure/extérieure : l'encart est une ombre intérieure et non une ombre extérieure.
box-shadow: 15px 21px 48px -2px #666;
  • 1

Insérer la description de l'image ici
Ombres couramment utilisées

box-shadow: 0 2px 6px 0 rgba(0,0,0,.4);
  • 1

Insérer la description de l'image ici

Voir plus d'utilisation
https://developer.mozilla.org/zh-CN/docs/Web/CSS/box-shadow

  • [Pratique] Ecraser la couleur de fond du remplissage automatique de la zone de saisie

    input:-webkit-autofill {
        -webkit-box-shadow: inset 0 0 0 1000px #fff;
        background-color: transparent;
    }
    
    • 1
    • 2
    • 3
    • 4
  • [Pratique] Modifier les couleurs des appuis sur les boutons par lots

    button:active {
        box-shadow: inset 0 0 0 999px rgba(0, 0, 0, .1);
    }
    
    • 1
    • 2
    • 3
  • 【Combat réel】Guide du débutant sur l’effet masquant

    .guide {
        box-shadow: 0 0 0 9999px rgba(0, 0, 0, .75);
        border-radius: 50%;
    }
    
    • 1
    • 2
    • 3
    • 4

chemin du clip

https://blog.csdn.net/weixin_41192489/article/details/121341551

transformertransformer

https://blog.csdn.net/weixin_41192489/article/details/140314866

zoomzoomer

Le navigateur Firefox ne le prend pas en charge. Il peut avoir les valeurs d'attribut suivantes.

  • Valeur en pourcentage.zoom:50%, indiquant une réduction à la moitié de la taille d'origine.
  • valeur numérique.zoom:0.5, indiquant une réduction à la moitié de la taille d'origine.
  • normalMots clés.zoom:normalÉquivalent àzoom:1, est la valeur par défaut.
  • resetMots clés.zoom:reset , indiquant que lorsque l'utilisateur appuie sur Ctrl et − ou Ctrl et + pour zoomer sur le document, les éléments ne seront ni réduits ni agrandis en conséquence. Cependant, ce mot-clé a une mauvaise compatibilité et n'est pris en charge que par le navigateur Safari.

Comparaison entre les fonctions zoom et scale()

  • zoomLa coordonnée centrale de la mise à l'échelle de l'attribut est relative au coin supérieur gauche de l'élément et ne peut pas être modifiée.transformtransformerscale()La coordonnée centrale par défaut de la mise à l'échelle de la fonction est le point central de l'élément.
  • La mise à l'échelle de l'attribut de zoom modifiera la taille de l'espace occupé par l'élément en temps réel et déclenchera un redessin et un recalcul. Par conséquent, les performances de la mise à l'échelle de l'attribut de zoom sont pires que celles de la fonction scale().
  • L'application de l'attribut zoom à un élément ne créera pas de contexte en cascade, n'affectera pas le positionnement des éléments fixes et le masquage par débordement des éléments en position absolue par l'attribut overflow, ni ne modifiera le bloc contenant des éléments en position absolue.

masque masque

https://blog.csdn.net/weixin_41192489/article/details/121158821

dégradédégradé

https://blog.csdn.net/weixin_41192489/article/details/140316024

Styles uniques pour différents types d'éléments

texte

https://blog.csdn.net/weixin_41192489/article/details/140264311

Lien hypertexte

Styles de pseudo-classes - doivent être écrits dans l'ordre fixe suivant :

  • :link "Lien" : avant de cliquer sur le lien hypertexte - s'applique à tous les hyperliens avec des attributs href (à l'exclusion des ancres) - peut être omis, abrégé dans la balise a
  • :visited "Visité" : une fois le lien visité - il peut être omis, abrégé dans la balise a
  • :hover "hover" : lorsque la souris est posée sur l'étiquette
  • :active "Activer" : Lorsque la souris clique sur l'étiquette mais ne la lâche pas.
    /*让超链接点击之前是红色*/
    a:link{
        color:red;
    }

    /*让超链接点击之后是绿色*/
    a:visited{
        color:orange;
    }

    /*鼠标悬停,放到标签上的时候*/
    a:hover{
        color:green;
    }

    /*鼠标点击链接,但是不松手的时候*/
    a:active{
        color:black;
   }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

image

Filtre de filtre d'image

https://www.runoob.com/cssref/css3-pr-filter.html

icône

feuille

Mettre en surbrillance les lignes au survol
/*鼠标悬停时,让当前行显示#868686这种灰色*/
table tr:hover{
      background: #868686;
}
  • 1
  • 2
  • 3
  • 4
alternance de rangées de couleurs

L’alternance des couleurs entre les lignes de données peut réduire la fatigue de lecture de l’utilisateur.

table tr:nth-child(odd){
   background:#fff
}
table tr:nth-child(even){
   background:blue
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

faire défiler

Curseur de la souris

valeurdécrire
URLURL du curseur personnalisé.
défautCurseur par défaut (généralement une flèche)
auto défaut. Le curseur défini par le navigateur.
réticuleLe curseur apparaît sous forme de réticule.
pointeur [couramment utilisé]Le curseur est rendu sous forme de pointeur indiquant le lien (une main)
se déplacerCe curseur indique qu'un objet peut être déplacé.
e-redimensionnementCe curseur indique que le bord de la boîte rectangulaire peut être déplacé vers la droite (est).
ne-redimensionnerCe curseur indique que le bord de la boîte rectangulaire peut être déplacé vers le haut et vers la droite (Nord/Est).
nw-redimensionnerCe curseur indique que le bord de la boîte rectangulaire peut être déplacé vers le haut et vers la gauche (Nord/Ouest).
n-redimensionnerCe curseur indique que le bord de la boîte rectangulaire peut être déplacé vers le haut (vers le nord).
se-redimensionnerCe curseur indique que le bord de la boîte rectangulaire peut être déplacé vers le bas et vers la droite (sud/est).
redimensionner swCe curseur indique que le bord du rectangle peut être déplacé vers le bas et vers la gauche (sud/ouest).
s-redimensionnerCe curseur indique que le bord de la boîte rectangulaire peut être déplacé vers le bas (vers le sud).
w-redimensionnerCe curseur indique que le bord de la boîte rectangulaire peut être déplacé vers la gauche (ouest).
texteCe curseur indique du texte.
attendezCe curseur indique que le programme est occupé (généralement une montre ou un sablier).
aideCe curseur indique l'aide disponible (généralement un point d'interrogation ou une bulle).

le curseur

Couleur du curseur couleur-caret
Définir la couleur du curseur d'insertion de la zone de saisie (non encore pris en charge par les navigateurs IE et Edge)

input {
    caret-color: red;
}
  • 1
  • 2
  • 3

Afficher et masquer les styles associés

Lorsqu'aucun style suivant ne peut masquer des éléments, les éléments sont affichés (certains ne sont pas visibles simplement parce que la cascade est couverte) :

  • display: none [Couramment utilisé] Les éléments masqués, n'occupent pas d'espace, chargeront des ressources et le DOM est accessible (l'ajout de caché à la balise html modifiera l'affichage de la balise sur aucun)
  • visibility: hidden Les éléments cachés occupent la position, les ressources seront chargées et le DOM est accessible
    • Si l'élément parent définit visibilité:hidden, les éléments enfants seront également invisibles (héritage)
    • Si visibilité:visible est défini sur un élément enfant, l'élément enfant sera à nouveau affiché.
  • opacity: 0 L'élément est invisible, prend position et peut être cliqué ou sélectionné.
  • clip: rect(0 0 0 0) L'élément est invisible, on ne peut pas cliquer, ne prend pas de place, mais est accessible au clavier
  • Les valeurs z-index négatives masquent l'élément. L'élément est invisible et ne peut pas être cliqué, mais il prend de la place et est accessible depuis le clavier.
    .lower {
     position: relative;
     z-index: -1;
    }
    
    • 1
    • 2
    • 3
    • 4

Styles dépendants de la position

La position d'un élément sur la page est déterminée par de nombreux styles, notamment le positionnement, l'affichage, le flottant, la marge, etc.

Lorsque la position, l'affichage et le flotteur existent en même temps, l'effet d'affichage final de l'élément sera déterminé selon la logique décrite dans le lien ci-dessous.

https://blog.csdn.net/weixin_41192489/article/details/119009647

poste poste

https://blog.csdn.net/weixin_41192489/article/details/140242430

dispositionaffichage

https://blog.csdn.net/weixin_41192489/article/details/140250775

marge

https://blog.csdn.net/weixin_41192489/article/details/115140348

Alignement

https://blog.csdn.net/weixin_41192489/article/details/140255028

Indice Z en cascade

https://blog.csdn.net/weixin_41192489/article/details/140297366

Styles liés à l’interaction

Comportement de défilement fluide : fluide

https://blog.csdn.net/weixin_41192489/article/details/121365831

étirer le redimensionnement

https://blog.csdn.net/weixin_41192489/article/details/121396794

Styles liés à l'adaptation de l'appareil

Demandes des médias @media

https://blog.csdn.net/weixin_41192489/article/details/126028971

[Pratique] Solutions d'adaptation de terminaux mobiles (trois types)

https://blog.csdn.net/weixin_41192489/article/details/120999355

Styles CSS personnalisés (variables CSS/propriétés personnalisées)

https://blog.csdn.net/weixin_41192489/article/details/140317369

Améliorer l'efficacité de l'écriture CSS

Préprocesseur CSS

Le préprocesseur CSS est un langage de programmation spécialisé utilisé pour ajouter certaines fonctionnalités de programmation au CSS (le CSS lui-même n'est pas un langage de programmation). Il n'est pas nécessaire de prendre en compte les problèmes de compatibilité du navigateur, car le préprocesseur CSS compile et génère en fin de compte les styles CSS standard. Vous pouvez utiliser des compétences de base en programmation telles que des variables, des jugements logiques simples et des fonctions dans le préprocesseur CSS.

Les préprocesseurs CSS grand public incluent Sass (Scss), Less et Stylus.
(SASS a été renommé SCSS depuis la version 3.0)

Cadre CSS

Conventions de codage CSS

  • Réinitialiser les styles par défaut du navigateur
  • Essayez d'éviter d'utiliser le style
  • Les unités ne peuvent être omises que si la valeur de l'attribut est zéro
  • La valeur est généralement un nombre pair, par exemple 6px au lieu de 5px (notamment la hauteur de ligne et la taille de la police, afin de garantir que leur différence soit divisible par 2, afin que la police soit centrée dans la ligne)
  • Le nom de la classe doit être sémantique, afin que vous puissiez identifier en un coup d'œil sur quel élément le nom de la classe agit/l'effet de style obtenu par le nom de la classe.
/* 给左侧的盒子定义的样式 */
.leftBox{
}
/* 给内部为菜单的盒子定义的样式 */
.menuBox{
}
/* 将子元素排列为一行的样式 */
.row{
   display:flex
}
/* 设置颜色为红色 */
.red{
  color:red
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

Styles de texte recommandés

  • Utilisez font-size: medium; pour les conteneurs de texte (lorsque la taille par défaut du navigateur est modifiée, le texte peut être agrandi ou réduit en conséquence)
  • Le texte dans le conteneur de texte, en utilisant des unités relatives - pourcentage ou em
  • Utilisez-les comme unité pour les marges de texte

Animation haute performance

Les trois éléments de l'animation CSS haute performance font référence au positionnement absolu, à l'attribut d'opacité et à l'attribut de transformation. Par conséquent, le même effet d’animation est d’abord obtenu en utilisant l’attribut transform. Par exemple, les animations de mouvement d'éléments doivent utiliser l'attribut transform plutôt que l'attribut margin.