Question

Le patron souhaite que le menu de la page maître soit plus joli. J'ai généré mon fichier de dégradé avec l'un des outils disponibles sur le net, aucun problème là-bas.

J'ai essayé de créer une classe CSS pour chaque élément de menu, mais lorsque j'utilise la directive background-image et le générateur de style, une ligne comme celle-ci apparaît:

background-image: url('file:///C:/Documents and Settings/Username/My Documents/Visual Studio 2008/WebSites/ThisSite/Images/Gradient.png')

... quand ce que je veux est

background-image: url('~/Images/Gradient.png')

La première URL ne fonctionnera, bien sûr, que lorsque je débogue sur ma machine locale - déployez-la et je suis bloqué. Tant d'autres objets ASP.NET fonctionnent avec " ~ / " pour indiquer le répertoire de niveau supérieur du site Web mais mon fichier css ne l'aime pas et je ne peux pas définir d'image de fond pour le contrôle de menu ni les éléments de menu - cela semble être une omission GLARING quand je peux le faire à plusieurs autres contrôles.

Qu'est-ce qui me manque?

Était-ce utile?

La solution

Vous y êtes presque ... essayez ceci:

.menuStyle
{
  background-image: url('/images/BG.gif'); /* Putting a slash in front means its relative to the root.  No slash would be relative to the current directory. */
  background-repeat: repeat-x; /* assuming you have a vertical gradient. */
}

L’espoir que cela aide.

Autres conseils

L'URL dans votre CSS doit être une URL absolue (ou relative) et ne pas utiliser le mappage tilde, car il ne s'agit pas d'un composant côté serveur.

    background-image: url(  "/images/menu.jpg" );

Ce n'est pas une omission flagrante. Pas une omission du tout. Le tilde est une construction ASP. Dans votre CSS, cela n'aura aucun sens.

Un " remplacer tout " opération et vous êtes prêt.

Remplacez fichier: /// C: / Documents and Settings / Nom d'utilisateur / Mes documents / Visual Studio 2008 / WebSites / ThisSite par un blanc.

J'ai essayé de définir la propriété background-image de CSS dans mon application ASP.Net (c'est-à-dire en donnant le chemin relatif comme décrit dans l'article). Cependant, cela n'a pas fonctionné pour moi. Plus tard, définissant l’image d’arrière-plan comme image-d’arrière-plan: url ('http: // localhost: 1701 / Images / BannerTileBackground.gif'); cela a fonctionné.

Faites-moi savoir quelle est la bonne approche et la raison pour laquelle cela n'a pas fonctionné auparavant.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top