Maison interface Web tutoriel CSS Exemple d'utilisation de RGBa pour ajuster la transparence en CSS3

Exemple d'utilisation de RGBa pour ajuster la transparence en CSS3

Mar 20, 2017 am 10:45 AM
css3 透明度

Cet article présente un tutoriel sur l'utilisation de RGBa pour ajuster la transparence dans CSS3. RGBA est une extension du modèle de couleur RVB Cette abréviation représente la première des trois couleurs primaires. de rouge, vert et bleu. Les lettres et les valeurs Alpha représentent la transparence ou l'opacité d'une couleur. Les amis dans le besoin peuvent se référer à

En CSS3, un attribut d'opacité

a été ajouté. , permettant aux développeurs de définir la transparence des éléments. Désormais, l'opacité est prise en charge par les navigateurs modernes traditionnels, mais l'opacité définira l'élément défini et ses sous-éléments sur la même transparence en même temps. Ces règles de transparence sont assez rigides et souvent. rencontrer beaucoup de problèmes dans le développement réel. En fait, il existe une autre solution de transparence des couleurs dans CSS3 : RGBa. Par rapport à l'opacité, RGBa peut définir la transparence sur un seul élément sans affecter ses sous-éléments. Cependant, la prise en charge du navigateur par RGBa n'est pas aussi étendue que l'opacité, elle a donc attiré relativement peu l'attention des développeurs.

RGBA(R,G,B,A)

Valeur :
R : valeur rouge. Positif
Entier | PourcentG : Valeur verte. Entier positif | Pourcentage
B : valeur bleue. Entier positif | Pourcentage
A : transparence alpha. La valeur est comprise entre 0 et 1.
Ce qui suit est blanc en utilisant rgba() pour définir une transparence de 50 %.

p {   
color: rgba(255, 255, 255, 0.5);   
}
Copier après la connexion
RGBA est une extension du modèle de couleur RVB. Cet acronyme représente les premières lettres des trois couleurs primaires rouge, vert et bleu, et la valeur alpha représente la transparence/opacité de la couleur.

Ce qui suit est une introduction détaillée aux couleurs RGBa.

1. Base de couleur RVBA
RGBa ajoute essentiellement un canal alpha aux éléments définis, c'est-à-dire en plus des trois canaux de couleur rouge, vert et bleu. un canal représentant la transparence, dans lequel la valeur RVB utilise les trois entiers familiers de 0 à 255 pour représenter respectivement le rouge, le vert et le bleu, tandis que la valeur alpha est de 0 à 1 (une décimale). Voici un exemple pour illustrer son utilisation spécifique :

Dans CSS 2.1, l'utilisation des déclarations de couleurs RVB est prise en charge (bien que les développeurs puissent être plus habitués à utiliser une représentation hexadécimale telle que #343434), par exemple Pour définir la couleur d'arrière-plan #343434 pour l'élément p avec l'identifiant de l'exemple, vous pouvez écrire

/* RGB 表示方式 */
#example {background: rgb(52, 52, 52); }
Copier après la connexion
puis utiliser RGBa pour changer la couleur d'arrière-plan dans l'exemple pour avoir une transparence de 0,5.

/* 设置 0.5 透明度 */
#example-a {background: rgba(52, 52, 52, 0.5); }   
/* 也可以省略小数点前的 0 */
#example-a {background: rgba(52, 52, 52, .5); }
Copier après la connexion
Les effets avant et après l'ajout de transparence sont les suivants (afin de refléter plus clairement l'effet de transparence, le corps de l'exemple a une texture de fond ajoutée) :


Exemple dutilisation de RGBa pour ajuster la transparence en CSS3

Vous pouvez voir qu'il s'avère que RGBa ajoute simplement un paramètre au RVB d'origine. Bien que ce changement soit minime, il offre aux développeurs une grande commodité.

De plus, en plus de l'attribut background, RGBa peut également être utilisé dans les attributs color et b

order (Remarque : l'utilisation de RGBa pour l'attribut border dans Firefox sera différente de que dans d'autres navigateurs L'effet est légèrement différent).

2. Prise en charge du navigateur et amélioration progressive
Bien que RGBa ait reçu un bon support dans les navigateurs modernes grand public, la prise en charge de RGBa par Webkit est la plus ancienne,
Chrômeome a a commencé à prendre en charge RGBa depuis au moins la version 0.415. À cet égard, Chrome peut être considéré comme très puissant. De plus, les noyaux Gecko et Presto ont également progressivement implémenté la prise en charge de RGBa depuis IE9. Une prise en charge plus spécifique du navigateur est la suivante :

Chrome 0.4.154.33, Firefox 3.0, Safari 3.2.1, Opera 10.10, IE9

Pour une prise en charge plus détaillée du navigateur, veuillez vous référer ici.

Pour les navigateurs qui ne prennent pas en charge RGBa, une solution d'amélioration progressive peut être utilisée. Kayo recommande une solution qui spécifie une couleur réservée. Tout d'abord, les développeurs doivent savoir que les navigateurs qui ne prennent pas en charge RGBa traiteront les valeurs des propriétés CSS utilisant RGBa comme une

erreur de syntaxe et ignoreront donc le paramètre de propriété CSS. Par conséquent, les développeurs peuvent d'abord définir un attribut qui n'utilise pas la transparence avant de définir la couleur RGBa pour éviter la situation d'absence de couleur du tout lorsque le navigateur ne prend pas en charge RGBa. Ce qui suit est une explication détaillée de l'exemple ci-dessus :

#example1 {background: rgb(52, 52, 52); background: rgba(52, 52, 52, .5); ne prend pas en charge RGBa Le navigateur ignorera le deuxième paramètre d'attribut d'arrière-plan et définira la couleur d'arrière-plan de l'élément en fonction de la valeur du premier attribut. Bien que l'effet entre les navigateurs ne puisse pas être le même, il a obtenu un effet similaire et reflète une bonne solution d'amélioration progressive. .


Bien sûr, pour IE, vous pouvez utiliser des filtres pour obtenir le même effet que dans les navigateurs prenant en charge RGBa. Par exemple : pour l'exemple ci-dessus, vous pouvez écrire le code comme suit

<. 🎜>Notez ici que le filtre utilise la même couleur et la même transparence que dans l'exemple ci-dessus, mais utilise une représentation hexadécimale.

IE 会忽略 RGBa 颜色设置,并且根据 filter 滤镜设置颜色,这样的效果与 RGBa 的效果相同。

三. 不影响子元素
在文章的开头已经介绍过,RGBa 相对 opacity 的优势是不会影响其子元素,即可以单独为被设置的元素设置透明度,而子元素而不受该设置影响。下面再例举一个具体的例子,分别以 RGBa 和 opacity 为元素设置透明度说明两者的区别。

完整代码:

<!DOCTYPE HTML>   
<html lang="zh-CN">   
<head>   
    <meta charset="UTF-8">   
    <title>RGBa 与 opacity 效果的区别</title>   
    <style type="text/css">   
        body {padding-top: 200px; background: url(bg.png); }   
        #example, #example-a {width: 200px; height: 100px; margin: 0 auto; }   
        #example {background: rgb(52, 52, 52); opacity: 0.5; }   
        #example-a {margin-top: 20px; background: rgba(52, 52, 52, .5); }   
        .inside {display: block; width: 50px; height: 50px; margin-left: 10px; background: rgb(100, 140, 180); }   
    </style>   
</head>   
<body>   
    <p id="example">   

        <span class="inside"></span>   

    </p>   

    <p id="example-a">   

        <span class="inside"></span>   

    </p>   
</body>   
</html>
Copier après la connexion

具体效果
Exemple dutilisation de RGBa pour ajuster la transparence en CSS3

可以看出,opacity 会使其中的子元素 span 同时变为半透明的效果,而 RGBa 则只改变被设置的元素的透明度,而在大多数情况下,开发者只需要设置当前元素的透明度(如遮罩,半透明背景等),因此使用 RGBa 会更加的灵活。

另外,在 IE9 中,直接使用 RGBa 颜色与使用 opacity 设置透明的效果会有差异(读者可以在 IE9 下浏览 Demo 查看具体的效果),开发者需要注意这一点差异。

相关文章:

CSS设定一个元素半透明

CSS3教程(8):CSS3透明度指南

实现CSS3不透明度完整代码

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Comment obtenir un effet de vague avec du CSS3 pur ? (exemple de code) Comment obtenir un effet de vague avec du CSS3 pur ? (exemple de code) Jun 28, 2022 pm 01:39 PM

Comment obtenir un effet de vague avec du CSS3 pur ? Cet article vous présentera comment utiliser l'animation SVG et CSS pour créer des effets de vagues. J'espère que cela vous sera utile !

Utilisez habilement CSS pour réaliser divers boutons de forme étrange (avec code) Utilisez habilement CSS pour réaliser divers boutons de forme étrange (avec code) Jul 19, 2022 am 11:28 AM

Cet article va vous montrer comment utiliser CSS pour réaliser facilement divers boutons aux formes étranges qui apparaissent fréquemment. J'espère que cela vous sera utile !

Comment masquer des éléments en CSS sans prendre de place Comment masquer des éléments en CSS sans prendre de place Jun 01, 2022 pm 07:15 PM

Deux méthodes : 1. À l'aide de l'attribut display, ajoutez simplement le style "display:none;" à l'élément. 2. Utilisez les attributs position et top pour définir le positionnement absolu de l'élément afin de masquer l'élément. Ajoutez simplement le style "position:absolute;top:-9999px;" à l'élément.

Comment implémenter des bordures en dentelle en CSS3 Comment implémenter des bordures en dentelle en CSS3 Sep 16, 2022 pm 07:11 PM

En CSS, vous pouvez utiliser l'attribut border-image pour réaliser une bordure en dentelle. L'attribut border-image peut utiliser des images pour créer des bordures, c'est-à-dire ajouter une image d'arrière-plan à la bordure. Il vous suffit de spécifier l'image d'arrière-plan comme style de dentelle ; largeur de la bordure de l'image vers l'intérieur. Indique si le début est répété ;".

Il s'avère que le carrousel de texte et le carrousel d'images peuvent également être réalisés en utilisant du CSS pur ! Il s'avère que le carrousel de texte et le carrousel d'images peuvent également être réalisés en utilisant du CSS pur ! Jun 10, 2022 pm 01:00 PM

Comment créer un carrousel de texte et un carrousel d'images ? La première chose à laquelle tout le monde pense est de savoir s'il faut utiliser js. En fait, le carrousel de texte et le carrousel d'images peuvent également être réalisés en utilisant du CSS pur. Jetons un coup d'œil à la méthode d'implémentation.

Comment agrandir l'image en cliquant sur la souris en CSS3 Comment agrandir l'image en cliquant sur la souris en CSS3 Apr 25, 2022 pm 04:52 PM

Méthode d'implémentation : 1. Utilisez le sélecteur ":active" pour sélectionner l'état du clic de la souris sur l'image ; 2. Utilisez l'attribut de transformation et la fonction scale() pour obtenir l'effet d'agrandissement de l'image, la syntaxe "img:active {transform : échelle (grossissement de l'axe x, grossissement de l'axe y);}".

Apprenez à définir la transparence de la barre des tâches Win10 Apprenez à définir la transparence de la barre des tâches Win10 Jul 10, 2023 pm 12:37 PM

Le système Win10 possède de nombreuses fonctionnalités relativement nouvelles. Certains amis souhaitent rendre leur système Win10 plus personnalisé, ils souhaitent donc définir la transparence de la barre des tâches pour qu'elle soit plus cool. Alors comment régler la transparence de la barre des tâches win10 ? L'éditeur ci-dessous vous apprendra comment définir la transparence de la barre des tâches Win10. La méthode spécifique est la suivante : 1. Allumez l'ordinateur, déplacez la souris sur la barre des tâches, puis cliquez avec le bouton droit sur la barre des tâches, recherchez « Paramètres de la barre des tâches » dans la fenêtre et cliquez dessus. 2. Après avoir cliqué sur la fenêtre « Paramètres de la barre des tâches », recherchez l'option « Couleur » et cliquez dessus. Dans l'interface de configuration « Couleur », vous pouvez définir la couleur de la barre des tâches que vous aimez. Vous pouvez choisir la couleur de Windows ou personnaliser la couleur. . Sélectionnez Après avoir choisi la couleur, recherchez « Effet de transparence » ci-dessous.

Comment obtenir un effet de dégradé de transparence à l'aide des propriétés CSS Comment obtenir un effet de dégradé de transparence à l'aide des propriétés CSS Nov 18, 2023 pm 05:28 PM

La méthode d'implémentation de l'effet de dégradé de transparence à l'aide des propriétés CSS nécessite des exemples de code spécifiques. Dans la conception Web, l'effet de dégradé de transparence peut ajouter un effet de transition doux et esthétique à la page. Grâce au paramétrage des propriétés CSS, nous pouvons facilement obtenir l'effet de transition sur la transparence des différents éléments. Aujourd'hui, nous allons présenter quelques méthodes courantes et des exemples de code spécifiques. Utilisez l'attribut opacity. L'attribut Opacity peut définir la transparence d'un élément. La valeur est comprise entre 0 et 1. 0 signifie complètement transparent et 1 signifie complètement opaque. nous pouvons passer

See all articles