Comment détecter les propriétés CSS
Comment détecter les propriétés CSS
Si nous voulons détecter si un attribut CSS prend en charge
var dom = document.createElement('p'); if ('textShadow' in dom.style) { alert('支持textShadow属性') } else { alert('不支持textShadow属性') }
Si nous voulons détecter si l'attribut CSS3 prend en charge une certaine valeur
var dom = document.createElement('p'); dom.style.backgroundImage = 'linear-gradient(red, tan)'; if (dom.style.backgroundImage) { alert('支持该属性值'); } else { alert('浏览器不支持该属性值') }
Comment attribuer dynamiquement un effet CSS3 et prendre en charge tous les principaux navigateurs
function iSlider() {}; /** * @returns {String} * @private */ iSlider.TRANSITION_END_EVENT = null; iSlider.BROWSER_PREFIX = null; (function () { var e = document.createElement('fakeElement'); [ ['WebkitTransition', 'webkitTransitionEnd', 'webkit'], ['transition', 'transitionend', null], ['MozTransition', 'transitionend', 'moz'], ['OTransition', 'oTransitionEnd', 'o'] ].some(function (t) { if (e.style[t[0]] !== undefined) { iSlider.TRANSITION_END_EVENT = t[1]; iSlider.BROWSER_PREFIX = t[2]; return true; } }); })(); /** * @param {String} prop * @param {String} value * @returns {String} * @public */ iSlider.styleProp = function (prop, isDP) { if (iSlider.BROWSER_PREFIX) { if (!!isDP) { return iSlider.BROWSER_PREFIX + IU(prop); } else { return '-' + iSlider.BROWSER_PREFIX + '-' + prop; } } else { return prop; } }; /** * @param {String} prop * @param {HTMLElement} dom * @param {String} value * @public */ iSlider.setStyle = function (dom, prop, value) { dom.style[iSlider.styleProp(prop, 1)] = value; }; /** * @type {Object} * * @param {HTMLElement} dom The wrapper <li> element * @param {String} axis Animate direction * @param {Number} scale Outer wrapper * @param {Number} i Wrapper's index * @param {Number} offset Move distance * @protected */ iSlider._animateFuncs = { normal: (function () { function normal(dom, axis, scale, i, offset) { iSlider.setStyle(dom, 'transform', 'translateZ(0) translate' + axis + '(' + (offset + scale * (i - 1)) + 'px)'); } normal.effect = iSlider.styleProp('transform'); return normal; })() };
Informations
secrets CSS
ligne iSlider 250
Comment détecter les propriétés CSS
Si nous voulons détecter si un attribut CSS prend en charge une certaine valeur
var dom = document.createElement('p'); if ('textShadow' in dom.style) { alert('支持textShadow属性') } else { alert('不支持textShadow属性') }
Si nous voulons détecter si l'attribut CSS3 prend en charge une certaine valeur
var dom = document.createElement('p'); dom.style.backgroundImage = 'linear-gradient(red, tan)'; if (dom.style.backgroundImage) { alert('支持该属性值'); } else { alert('浏览器不支持该属性值') }
Comment attribuer dynamiquement un effet CSS3 et prendre en charge tous les navigateurs grand public
function iSlider() {}; /** * @returns {String} * @private */ iSlider.TRANSITION_END_EVENT = null; iSlider.BROWSER_PREFIX = null; (function () { var e = document.createElement('fakeElement'); [ ['WebkitTransition', 'webkitTransitionEnd', 'webkit'], ['transition', 'transitionend', null], ['MozTransition', 'transitionend', 'moz'], ['OTransition', 'oTransitionEnd', 'o'] ].some(function (t) { if (e.style[t[0]] !== undefined) { iSlider.TRANSITION_END_EVENT = t[1]; iSlider.BROWSER_PREFIX = t[2]; return true; } }); })(); /** * @param {String} prop * @param {String} value * @returns {String} * @public */ iSlider.styleProp = function (prop, isDP) { if (iSlider.BROWSER_PREFIX) { if (!!isDP) { return iSlider.BROWSER_PREFIX + IU(prop); } else { return '-' + iSlider.BROWSER_PREFIX + '-' + prop; } } else { return prop; } }; /** * @param {String} prop * @param {HTMLElement} dom * @param {String} value * @public */ iSlider.setStyle = function (dom, prop, value) { dom.style[iSlider.styleProp(prop, 1)] = value; }; /** * @type {Object} * * @param {HTMLElement} dom The wrapper <li> element * @param {String} axis Animate direction * @param {Number} scale Outer wrapper * @param {Number} i Wrapper's index * @param {Number} offset Move distance * @protected */ iSlider._animateFuncs = { normal: (function () { function normal(dom, axis, scale, i, offset) { iSlider.setStyle(dom, 'transform', 'translateZ(0) translate' + axis + '(' + (offset + scale * (i - 1)) + 'px)'); } normal.effect = iSlider.styleProp('transform'); return normal; })() };
Pour plus d'articles connexes sur la façon de détecter les fonctionnalités CSS, veuillez faites attention au site Web PHP chinois !

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

AI Hentai Generator
Générez AI Hentai gratuitement.

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)

Si vous avez récemment commencé à travailler avec GraphQL ou examiné ses avantages et ses inconvénients, vous avez sans aucun doute entendu des choses comme "GraphQL ne prend pas en charge la mise en cache" ou

L'API de transition Svelte fournit un moyen d'animer les composants lorsqu'ils entrent ou quittent le document, y compris les transitions Svelte personnalisées.

Combien de temps passez-vous à concevoir la présentation de contenu pour vos sites Web? Lorsque vous écrivez un nouveau blog ou créez une nouvelle page, pensez-vous à

Avec la récente montée du prix du bitcoin sur 20k $ USD, et pour lui, récemment en train de briser 30k, je pensais que cela valait la peine de reprendre une profonde plongeon dans la création d'Ethereum

L'article discute de l'utilisation de CSS pour les effets de texte comme les ombres et les gradients, les optimiser pour les performances et l'amélioration de l'expérience utilisateur. Il répertorie également les ressources pour les débutants (159 caractères)

Quelle que soit le stade dans lequel vous vous trouvez en tant que développeur, les tâches que nous effectuons - qu'elles soient grandes ou petites - ont un impact énorme dans notre croissance personnelle et professionnelle.

Les commandes NPM exécutent diverses tâches pour vous, soit en tant que processus unique ou en cours d'exécution pour des choses comme le démarrage d'un serveur ou la compilation de code.

Je dirais que "Site Web" correspond mieux que "Application mobile" mais j'aime ce cadrage de Max Lynch:
