Allgemeine Diskussion Stylesheet Reihenfolge im Header ändern

  • Sonntag, 1. Januar 2012 15:26
     
      Enthält Code
    Hallo,
    An alle ein frohes und erfolgreiches 2012.
    Ich benutze Yaml für mein Layout. Dazu habe ich im App_Themes ein Design erstellt, indem auch die layout.css für YAML eingebunden ist. Das funktioniert soweit auch ganz gut. Für den IE 7 liegt im Root-verzeichnis eine Patch-Datei im Ordner css\patches.

    Ich habe eine Masterpage erstellt, in welcher ich im Header folgenden Eintrag für den Patch gemacht habe:

    <head runat="server">
        <title></title>
            <!--[if lte IE 7]>
            <link href="css/patches/patch_layout.css" rel="stylesheet" type="text/css" />
            <![endif]-->
        <asp:ContentPlaceHolder id="head" runat="server">
             
        </asp:ContentPlaceHolder>
    </head>


    In der Web.config habe ich <pages theme="default" ... eingestellt.

    Nachdem ich die Seiten erstelle, ist die Reihenfolge im Header folgende:

    <head><title></title>
        <!--[if lte IE 7]>
        <link href="css/patches/patch_layout.css" rel="stylesheet" type="text/css" />
        <![endif]-->
    <linkhref="App_Themes/default/css/layout.css"type="text/css"rel="stylesheet"/></head>

    Wie kann man die Reihenfolge abändern, dass zuerst der Verweis auf App_Themes und dann das Patch kommt?

    Reiner


Alle Antworten

  • Mittwoch, 8. Februar 2012 14:01
     
      Enthält Code

    Hallo Reiner

    Leider kannst du die Reihenfolge konfigurativ nicht ändern. Themes werden immer am Ende des Head Tags eingefügt.

    Wass du machen kannst, ist auf Pre_Render die Reihenfolge programatisch ändern oder mit !imporant Anweisungen im patch_layout.css file arbeiten.

    protected void Page_PreRender(object sender, EventArgs e) { ControlCollection container = this.Page.Header.Controls; foreach (var control in container.OfType<System.Web.UI.HtmlControls.HtmlLink>().ToArray()) { container.Remove(control); container.AddAt(0, control); } }

    Quelle: http://stackoverflow.com/questions/2917187/asp-net-theme-stylesheet-rendering
  • Freitag, 2. März 2012 10:44
    Moderator
     
     
    Hallo,
    Wäre es machbar, dass Du eine kurze Rückmeldung gibst, ob die Antwort Dir geholfen hat?
    VG/Bogdan

    Ich bin gerne bei den Foren. Es kommt von Herzen. Es wird aber keine implizite oder sonstige Garantie für die geposteten Antworte / Informationen gewährt. Hier auch die Forenregeln.