J'ai créé une feuille de style personnalisée qui remplace le CSS d'origine pour mon modèle Wordpress. Cependant, sur ma page de calendrier, le CSS d'origine a la hauteur de chaque cellule de tableau définie avec la !important
déclaration:
td {height: 100px !important}
Existe-t-il un moyen de contourner cela?
!important
? Si votre feuille CSS est définie après le modèle d'origine, cela devrait bien fonctionner.!important
est considéré comme nocif.Réponses:
Remplacer le modificateur! Important
!important
et donnez au sélecteur une spécificité plus élevée (en ajoutant une balise, un identifiant ou une classe supplémentaire au sélecteur)Quelques exemples avec une spécificité plus élevée (le premier est le plus élevé / remplace, le troisième est le plus bas):
Ou ajoutez le même sélecteur après celui existant:
Avertissement:
Ce n'est presque jamais une bonne idée à utiliser
!important
. C'est une mauvaise ingénierie par les créateurs du modèle WordPress. De manière virale, il oblige les utilisateurs du modèle à ajouter leurs propres!important
modificateurs pour le remplacer, et il limite les options pour le remplacer via JavaScript.Mais, il est utile de savoir comment le remplacer, si vous devez parfois le faire.
la source
!important
. Comme un remplacement de style à l'échelle du navigateur ou du site à partir d'un script élégant, AdBlock ou uBlock. Ou lorsque vous n'avez pas un accès raisonnablement facile au CSS de base, qui peut être très complexe, réparti sur de nombreux fichiers et évoluer dans le temps (et peut également être utilisé!important
). Comme tout outil, le potentiel positif ou négatif dépend de la façon dont vous l'utilisez. Les gens doivent arrêter de devenir singes chaque fois que des choses comme ça ou goto / eval / globals / etc. sont mentionnés. Autant dire "éviter WordPress" ou "éviter CSS" car le potentiel de "gâcher les choses" est trop grand.Le
!important
ne doit être utilisé que lorsque vous avez des sélecteurs dans votre feuille de style avec une spécificité conflictuelle .Mais même lorsque vous avez une spécificité conflictuelle, il est préférable de créer un sélecteur plus spécifique pour l'exception. Dans votre cas, il est préférable d'avoir un
class
code HTML que vous pouvez utiliser pour créer un sélecteur plus spécifique qui n'a pas besoin de la!important
règle.Personnellement, je n'utilise jamais
!important
dans mes feuilles de style. N'oubliez pas que le C en CSS est destiné à la cascade. L'utilisation!important
rompra cela.la source
!important
règle dans la feuille de style remplacera une règle normale dans unestyle
balise, par exemple. Cependant, dans certaines situations, il apparaîtra qu'une règle plus spécifique l'emporte. Par exemple, si vous définissez unfont-size: 24pt !important
onbody
, vous pouvez toujours le remplacer par unfont-size: 12pt
onp
. En effet, vous ne remplacez pas la!important
règle, vous remplacez l'implicitefont-size: inherit
surp
.Avertissement: Évitez! Important à tout prix.
C'est un hack sale, sale, mais vous pouvez remplacer une! Important, sans! Important, en utilisant une animation (en boucle infinie ou très longue durée) sur la propriété sur laquelle vous essayez de remplacer les importants.
la source
D'accord, voici une brève leçon sur l'importance CSS. J'espère que ce qui suit aide!
Tout d'abord, chaque partie du style est nommée pondération, donc plus vous avez d'éléments liés à ce style, plus il est important. Par exemple
est plus important que:
Donc, lorsque vous utilisez important, idéalement, cela ne devrait être utilisé que lorsque cela est vraiment nécessaire. Donc, pour outrepasser la decleration, rendez le style plus spécifique, mais aussi avec un override. Voir ci-dessous:
J'espère que ça aide!!!
la source
!important
peuvent être remplacés en redéfinissant .old-class-name {bla bla bla} comme .old-class-name.overrided {bla bla bla} dans la<style></style>
balise au-dessus du composant, cela fonctionne pour moiRemplacer à l'aide de JavaScript
A travaillé pour moi.
la source
Cela peut aussi aider
Cela remplacera tout style en ligne
la source
Dans tous les cas, vous pouvez remplacer
height
avecmax-height
.la source
Je voudrais ajouter une réponse à cela qui n'a pas été mentionnée, car j'ai essayé tout ce qui précède en vain. Ma situation spécifique est que j'utilise sémantique-ui, qui a construit des
!important
attributs sur des éléments (extrêmement ennuyeux). J'ai tout essayé pour le remplacer, seulement à la fin une chose a fonctionné (en utilisant jquery). C'est comme suit:la source
attr('style', ...
place