Wie setzen Sie einen Hintergrund mit Farbverlauf auf ASP.NET Menüpunkte?
-
05-07-2019 - |
Frage
Der Chef will die Menü der Masterseite schöner aussehen. Ich erzeugen meine Gradienten-Datei mit einem der verfügbaren Tool auf dem Netz, es kein Problem ..
Ich habe versucht, eine CSS-Klasse für jeden Menüpunkt zu machen, aber wenn ich die Hintergrund-Bild-Richtlinie und die Stil-Builder verwenden, erhalte ich eine Zeile wie:
background-image: url('file:///C:/Documents and Settings/Username/My Documents/Visual Studio 2008/WebSites/ThisSite/Images/Gradient.png')
... wenn das, was ich wollen ist
background-image: url('~/Images/Gradient.png')
Die erste URL wird natürlich nur funktionieren, wenn ich auf meinem lokalen Rechner bin Debuggen - Bereitstellen dieser und ich bin abgespritzt. So viele andere ASP.NET-Objekte Arbeit mit „~ /“, um anzuzeigen, das Top-Level-Verzeichnis der Website, aber meine CSS-Datei mag es nicht, und ich kann nicht ein Hintergrundbild für die Menüsteuerung oder die Menüpunkte gesetzt - scheint wie ein eklatantes Versäumnis, wenn ich es so viele andere Kontrollen tun.
Was bin ich fehlt?
Lösung
Sie sind fast da ... versuchen Sie dies:
.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. */
}
Ich hoffe, das hilft.
Andere Tipps
Die URL in Ihrem CSS muss eine absolute (oder relative) URL sein und nicht die Tilde-Mapping verwenden, da es nicht eine serverseitige Komponente ist.
background-image: url( "/images/menu.jpg" );
Es ist nicht ein eklatantes Versäumnis. Nicht eine Auslassung überhaupt. Die Tilde ist ein ASP-Konstrukt. In CSS wird es keine Bedeutung hat.
Ein „Alle ersetzen“ Betrieb und Sie werden eingestellt.
Ersetzen Sie file: /// C:. / Dokumente und Einstellungen / Benutzername / Eigene Dateien / Visual Studio 2008 / Website / ThisSite mit leeren
Ich habe versucht, die Eigenschaft background-image von CSS in meiner ASP.Net-Anwendung einstellen (das heißt den relativen Pfad zu geben, wie im Beitrag beschrieben). Allerdings konnte er sich nicht für mich arbeiten. Später Einstellung der Hintergrund-Bild als background-image:url('http://localhost:1701/Images/BannerTileBackground.gif');
es hat funktioniert ..
Bitte lassen Sie mich wissen, was der richtige Ansatz ist, und der Grund, warum es vorher nicht arbeiten.