


Explication détaillée de la méthode de lecture et d'écriture des styles CSS en javascript natif
J'ai rencontré ce problème récemment pendant mes études. Afin de faciliter les recherches futures, j'ai examiné certaines informations et résumé les méthodes suivantes, qui sont uniquement natives de JS. S'il y a quelque chose qui ne va pas, veuillez le signaler ! J'espère juste que tout le monde aura le sentiment d'avoir appris quelque chose après l'avoir lu ! L'article suivant présente principalement la méthode d'utilisation du javascript natif pour lire et écrire des styles CSS. Les amis dans le besoin peuvent s'y référer.
Préface
Peut-être que lorsque vous parlez du fonctionnement des styles CSS, beaucoup de gens penseront à la méthode CSS de jQuery : $(selector).css(name)
, mais il y en a quelques réflexions Avez-vous déjà réfléchi à la façon d'utiliser JS natif pour réaliser des fonctions similaires ?
La méthode la plus familière pour manipuler les styles dans les js natifs est l'objet Style dans le DOM. Cependant, cette méthode ne peut obtenir et modifier que les styles en ligne dans les documents HTML et ne peut pas utiliser les styles non en ligne (styles internes et). feuilles de style externes).
Grâce à la recherche et à l'organisation, j'ai résumé la mise en œuvre de la lecture et de l'écriture de styles CSS à l'aide de js natif. Pas grand chose à dire ci-dessous, jetons un œil à l’introduction détaillée.
Obtenez du style
1. Seuls les styles en ligne peuvent être obtenus :
var text = document.getElementById('text'); var textColor = text.style.color; // 得到textColor的值为 '#000'
currentStyle
Cette méthode n'est applicable qu'aux navigateurs IE. Sa forme est similaire à La différence est que, tout comme le nom de currentStyle - le style actuel (le style après le chargement du CSS), elle renvoie le CSS final actuel. valeur d'attribut de l'élément. Y compris les styles dans les balises de style internes et les fichiers CSS importés en externe.
element.style
Par exemple, nous voulons obtenir la largeur de la boîte avec l'identifiant :
var boxWidth = document.getElementById('box').currentStyle.width; // 得到boxWidth的值为 '200px'
3. getComputedStyle
getComputedStyle est une méthode qui peut obtenir toutes les valeurs finales des propriétés CSS utilisées de l'élément courant. Ce qui est renvoyé est un objet de déclaration de style CSS ([object CSSStyleDeclaration]) et est en lecture seule.
En terme de compatibilité, il supporte essentiellement : Chrome, Firfox, IE9, Opera, Safari
Utilisation : getComputedStyle (élément, pseudo-classe Attribut, si le deuxième paramètre n'est pas un). pseudo-classe Définissez-le sur null.
var el = document.getElementById("box"); var style = window.getComputedStyle(el , ":after");
// 这个函数需要传递两个参数:元素对象和样式属性名称 function getStyle(el, styleName) { if( el.currentStyle ) { // for IE return el.currentStyle[styleName]; } else { // for peace return getComputedStyle(el, false)[styleName]; } }
var box = document.getElementById("box"); var boxWidth = getStyle(box, 'width');
Quelle est la différence entre getComputedStyle et style ?
Puisqu'ils obtiennent tous les deux la valeur de l'attribut style, quelle est la différence entre eux :
La méthode
getComputedStyle est en lecture seule et ne peut obtenir que le style mais pas le définir, mais peut à la fois lire et écrire.
La plage d'objets obtenueelement.style
La méthode getComputedStyle obtient tous les objets d'attribut CSS qui sont finalement appliqués à l'élément (même s'il n'y a pas de code CSS, les huit ancêtres par défaut les générations seront affichées); et ne peut obtenir le style CSS que dans l'attribut style de l'élément. Par conséquent, pour un élément nu , la valeur de l'attribut length (le cas échéant) renvoyée par la méthode getComputedStyle dans l'objet est 190 (d'après mes tests, FF:192, IE9:195, Chrome:253, les résultats peuvent être différent dans différents environnements), et
Cité de l'article du blog de Zhang Xinxuelement.style
element.style
Définition du style
1. >
Inutile de dire, par exemple, de changer la couleur de fond de l'élément en rouge :
var el = document.getElementById('box'); el.style.backgroundColor = 'red';
L'essence de cssText est de définir la valeur de l'attribut de style de l'élément HTML. Il s'agit d'une représentation textuelle d'un ensemble de propriétés de style et de leurs valeurs. Ce texte est formaté comme une feuille de style CSS, avec les accolades entourant le sélecteur d'élément de l'attribut et de la valeur supprimées. Son utilisation est similaire à innerHTML :
Pour des explications plus détaillées sur la façon dont le javascript natif implémente la lecture et l'écriture des styles CSS, veuillez faire attention au site Web PHP chinois pour les articles connexes !

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

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Sujets chauds





Des questions et des solutions fréquemment posées pour l'impression de billets thermiques frontaux pour le développement frontal, l'impression de billets est une exigence commune. Cependant, de nombreux développeurs mettent en œuvre ...

Il n'y a pas de salaire absolu pour les développeurs Python et JavaScript, selon les compétences et les besoins de l'industrie. 1. Python peut être davantage payé en science des données et en apprentissage automatique. 2. JavaScript a une grande demande dans le développement frontal et complet, et son salaire est également considérable. 3. Les facteurs d'influence comprennent l'expérience, la localisation géographique, la taille de l'entreprise et les compétences spécifiques.

JavaScript est la pierre angulaire du développement Web moderne, et ses principales fonctions incluent la programmation axée sur les événements, la génération de contenu dynamique et la programmation asynchrone. 1) La programmation axée sur les événements permet aux pages Web de changer dynamiquement en fonction des opérations utilisateur. 2) La génération de contenu dynamique permet d'ajuster le contenu de la page en fonction des conditions. 3) La programmation asynchrone garantit que l'interface utilisateur n'est pas bloquée. JavaScript est largement utilisé dans l'interaction Web, les applications à une page et le développement côté serveur, améliorant considérablement la flexibilité de l'expérience utilisateur et du développement multiplateforme.

Comment fusionner les éléments du tableau avec le même ID dans un seul objet en JavaScript? Lors du traitement des données, nous rencontrons souvent la nécessité d'avoir le même ID ...

La discussion sur la réalisation des effets de défilement de parallaxe et d'animation des éléments dans cet article explorera comment réaliser le site officiel de Shiseido (https://www.shiseido.co.jp/sb/wonderland/) ...

Apprendre JavaScript n'est pas difficile, mais c'est difficile. 1) Comprendre les concepts de base tels que les variables, les types de données, les fonctions, etc. 2) Master la programmation asynchrone et les implémenter via des boucles d'événements. 3) Utilisez les opérations DOM et promettez de gérer les demandes asynchrones. 4) Évitez les erreurs courantes et utilisez des techniques de débogage. 5) Optimiser les performances et suivre les meilleures pratiques.

Discussion approfondie des causes profondes de la différence de sortie Console.log. Cet article analysera les différences dans les résultats de sortie de la fonction Console.log dans un morceau de code et expliquera les raisons derrière. � ...

Explorez la mise en œuvre de la fonction de glisser et de réglage du panneau de type VScode dans le frontal. Dans le développement frontal, comment implémenter un VScode comme ...
