L'attribut de transparence CSS3, opacité, doit être utilisé partout par tout le monde. Quant à la façon de gérer la transparence dans les navigateurs qui ne prennent pas en charge CSS3 et de maintenir la cohérence de l'effet du navigateur, cet article présente principalement l'explication détaillée de l'opacité transparente CSS et l'utilisation la plus précise du filtre de transparence de chaque version d'IE. intéressés peuvent en savoir plus.
Opacité de l'attribut de transparence CSS3Je crois que tout le monde l'a utilisé partout. Quant à la façon de traiter de manière transparente les navigateurs qui ne prennent pas en charge CSS3 et de maintenir des effets de navigateur cohérents, je pense que tout le monde peut l'écrire. Cependant, en ce qui concerne la signification grammaticale spécifique du filtre et les différentes méthodes d'écriture de chaque version, beaucoup de gens ne le font pas. J'ai interrogé de nombreux experts du groupe, mais aucun d'entre eux n'est très précis et les avis sur Internet sont encore plus variés. Aujourd'hui, j'examine principalement cet attribut et effectue des tests réels pour illustrer la méthode d'écriture correcte ainsi que les différences de prise en charge et d'écriture des différentes versions d'IE.
Tout d'abord, l'attribut Opacité permet de définir la transparence d'un élément. La plage de valeurs est comprise entre 0 et 1 et ne peut pas être négative. Une valeur d'opacité de 1 est complètement opaque et une valeur de 0 est complètement transparente et visuellement invisible. Concernant la compatibilité du navigateur avec l'attribut opacity, veuillez continuer à lire :
À partir de Firefox 3.5, l'attribut privé -moz-opacity n'est plus pris en charge. Avant Mozilla 1.7 (Firefox 0.9), FF utilisait cet attribut privé. , Firefox 0.9-Firefox3 prend en charge les attributs -moz-opacity et opacity. Maintenant, je repense à l'époque où je suis entré sur le lieu de travail, juste après la mise à niveau de Firefox vers 3.5, certains effets de transparence de page bien conçus ont soudainement disparu. déjà extrêmement populaire, et je déplore la façon dont le temps passe vite.
IE9 a seulement commencé à prendre en charge l'opacité CSS3, et pour IE6-IE8, nous sommes habitués à utiliser l'attribut filter pour l'implémenter. IE4 à IE9 prennent tous en charge la méthode d'écriture de filtre progid:DXImageTransform.Microsoft.Alpha(Opacity=xx).
IE8 a introduit le filtre spécial -ms. IE estime que cette méthode d'écriture est une correction de l'ancienne écriture. méthode. , ce qui est plus conforme à la spécification. La valeur d'attribut de cette méthode d'écriture n'a qu'une paire de guillemets et l'effet est le même qu'avant. Cependant, cette méthode d'écriture a une courte durée de vie. Depuis IE10, filter et -ms-filter ne sont plus pris en charge.
Les versions de Safari antérieures à la 1.2 étaient basées sur le noyau du navigateur khtml. Après la sortie de la version 1.2, la méthode d'écriture -khtml-opacity n'était plus prise en charge et -khtml-opacity est devenue une histoire.
Konqueror n'a jamais pris en charge -khtml-opacity, mais prend en charge l'opacité depuis la version 4.0.
En plus d'IE, les navigateurs grand public actuels Opera 9.0, Safari 1.2 (WebKit 125), Chrome, etc. prennent tous en charge l'attribut de transparence d'opacité.
À partir de la version 4.0, IE a fourni des effets de filtre multimédia intégrés. La méthode d'utilisation spécifique est :
Syntaxe :
filtre : filter
Paramètres :
filter : L'effet de filtre à utiliser. Séparez plusieurs filtres par des espaces.
Instructions :
1. Définissez ou récupérez l'effet de filtre appliqué à l'objet.
2. Pour utiliser cet attribut, l'objet doit avoir l'un des trois attributs : hauteur, largeur et position.
3. Le mécanisme de filtrage est extensible. Des filtres tiers peuvent être développés et utilisés.
4. Cet attribut n'est pas disponible sur la plateforme MAC.
5. La fonctionnalité de script correspondante est le filtre.
IE4.0 ou supérieur prend en charge les 14 filtres suivants :
①, Alpha permet aux éléments HTML d'afficher un effet progressif transparent
②, Flou donne aux éléments HTML un effet de flou dû au vent
③, Chroma rend une certaine couleur de l'image transparente
④, DropShadow donne aux éléments HTML une ombre tombante
⑤, FlipH fait retourner l'élément HTML horizontalement
⑥, FlipV fait retourner l'élément HTML verticalement
⑦, Glow crée un effet de halo et de flou autour de l'élément
⑧, Gray Turn une image couleur en noir et blanc
⑨, Inverser Produire l'effet d'un négatif photo de l'image
⑩, Lumière Placer une lumière et une ombre sur l'élément HTML
⑪, Masque Utiliser un autre élément HTML pour générer un masque de l'image sur un autre élément
⑫, Ombre Produire une ombre plus tridimensionnelle
⑬, Vague Laisser l'élément HTML produire une ombre horizontale Ou déformation ondulée dans le sens vertical
⑭, XRay produit le contour des éléments HTML, tout comme prendre des radiographies
Explication détaillée des paramètres du filtre Alpha
①, Opacité Le degré d'opacité, pourcentage. De 0 à 100, 0 signifie complètement transparent et 100 signifie complètement opaque.
②. FinishOpacity Il s'agit d'un paramètre sélectif utilisé avec Opacity et FinishOpacity. Lorsque Opacity et FinishOpacity sont utilisés en même temps, un effet transparent et progressif peut être produit, ce qui est plus cool. De 0 à 100, 0 signifie complètement transparent et 100 signifie complètement opaque.
③, Style Lorsque Opacity et finishOpacity sont définis en même temps pour produire un dégradé transparent, il utilise principalement le rouge pour spécifier la forme d'affichage progressive. 0 : aucun gradient ; 1 : gradient linéaire ; 2 : gradient circulaire ;
④. Start >⑦, FinishY La valeur de coordonnée Y de la fin progressive
Ce qui suit est un exemple pour tester la compatibilité du filtre et de l'opacité :
Code HTML
Remarque : N'oubliez pas d'écrire DOCTYPE lors du test, sinon cela s'écartera de l'effet réel. Code CSS correspondant :<!DOCTYPE html> <html> <head> <meta charset=utf-8 /> <title>JS Bin</title> </head> <body> <p class="transparent_class">测试透明度</p> </body> </html>
.transparent_class { /* Required for IE 5, 6, 7 */ /* ...or something to trigger hasLayout, like zoom: 1; */ width:300px; height:300px; line-height:300px; text-align:center; background:#000; color:#fff; /* older safari/Chrome browsers */ -webkit-opacity: 0.5; /* Netscape and Older than Firefox 0.9 */ -moz-opacity: 0.5; /* Safari 1.x (pre WebKit!) 老式khtml内核的Safari浏览器*/ -khtml-opacity: 0.5; /* IE9 + etc...modern browsers */ opacity: .5; /* IE 4-9 */ filter:alpha(opacity=50); /*This works in IE 8 & 9 too*/ -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; /*IE4-IE9*/ filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=50); }
-ms-filter:”progid:DXImageTransform.Microsoft.Alpha(Opacity=50)”; // first filter: alpha(opacity=50); // second
Pour des articles plus pertinents sur l'utilisation la plus précise de l'opacité transparente CSS et des versions IE des filtres de transparence, veuillez faire attention au site Web PHP chinois !