Comment remplacer l'image de fond définie dans le CSS avec un autre CSS?
J'ai un " Noyau.css " qui définit une page d'arrière-plan de l'image, avec le thème, pour le site. Mais pour une page spécifique, je veux changer juste le fond. Toutes les suggestions sur la façon dont cela peut être réalisé dans un autre fichier CSS?
Le code HTML de la page est:
<head>
<link rel="stylesheet" type="text/css" href="core.css" />
<link rel="stylesheet" type="text/css" href="index.css" />
Et le noyau.css définit:
body
{
background-image: url('bg.png');
}
Tandis que l'indice.css définit:
body
{
background-image:('homeBg.png');
}
Merci!
- il aiderait à voir le css définition sur les deux fichiers css, et comment vous les importez de votre page web.
- J'ai mis à jour ma réponse, voir si ça aide.
- merci ça fonctionne maintenant
- est-il un manque "url" avant " ("dans l'index.css?
- en regardant maintenant, oui, il semble "url" est manquant...mais je ne pouvais pas dire à coup sûr que c'était il y a longtemps et depuis oublié problème
Vous devez vous connecter pour publier un commentaire.
arrière-plan défini plus tard, devrait remplacer les précédents. Donc, si vous avez:
Site1.css qui a:
Site2.css qui a:
puis Site2.css .img remplacer .img dans Site1.css si Site2.css est inclus après Site1.css sur votre page.
Mise à JOUR: je ne sais pas pourquoi le corps de la balise n'est pas remplacée correctement. Pourriez-vous essayer de lui donner une classe ou un id, et utiliser à la place du corps?
par exemple
Puis dans les fichiers css, vous feriez
#backgroundTest { background-image... }
Et juste au cas où, pourriez-vous vérifier si homeBg.png existe et l'index.css. http://yourpage.com/homeBg.png et http://yourpage.com/index.css devrait à la fois exister.
<head> <link type="text/css" href="core.css" /> <link type="text/css" href="index.css" />
je fais évidemment quelque chose de mal?<body ...
élément. Sur la droite il y a une section intitulée "Styles" avec un paragraphe "Matched Règles CSS". Il y a une règle sur le dessus, avec la règle remplacée juste en dessous.Si vous souhaitez remplacer l'image d'arrière-plan avec rien (c'est à dire la rendre inactive ou "désactiver"), utilisez l'option "aucun" mot-clé dans votre aval de la feuille de style:
Pour la page spécifique que vous pouvez utiliser une règle css dans la page, à l'aide de
!important
. Si vous ajoutezyour-selector {background: url("the-path-for-the-bg-image") no-repeat !important;}
dans le fichier, va se substituer à l'arrière-plan par défaut.Définir l'arrière-plan dans une règle CSS avec le même sélecteur de la règle originale, et inclure votre nouveau fichier CSS après l'original, ou assurez-vous que votre nouvelle règle a un sélecteur qui a une spécificité plus élevée: http://www.w3.org/TR/CSS2/cascade.html#specificity
Enfin vous pouvez donner le fond de la propriété de la
!important
drapeau, mais c'est généralement un dernier recours, et le signe d'un mal organisée feuille de style.Si le fond de la page est définie dans le corps, vous pouvez simplement annuler en donnant au corps à cette page en particulier d'une classe ou d'un identifiant et d'ajouter (peut aussi être dans le même fichier css...):
ou
(dans les deux
body
partie n'est pas vraiment nécessaire que la classe et l'id d'annuler le sélecteur)J'ai eu le même problème.
Ce que j'ai fais dans ma feuille de style qui a été fait le remplacer, j'ai appliqué non seulement de corps, html:
Donc...
Espère que cela peut aider quelqu'un.
dans l'index.css écrire
vous pouvez remplacer n'importe quel bien définie n'importe où en écrivant "!important" après avoir dans un nouveau fichier
!important
ne doit pas être utilisé dans le CSS. Si forcé à l'utiliser, le son est un signe que les règles ne sont pas appliquées dans l'ordre correct.!important
et vous souhaitez la remplacer ??!important
alors oui, vous êtes de gauche avec pas le choix. Un autre cas d'utilisation, c'est que lorsquestyle
tag est utilisé par JS pour ajouter des styles.!important
comme un mécanisme pour remplacer les styles et jusqu'à la fin avec CSS ayant!important
tous sur la place.