javascript - élément - Comment configurer un sélecteur CSS




selecteur css (3)

Je ferais ce qui suit:

www.website.com/?stylesheet=new.css

Ensuite, dans votre code ASP.NET:

if (Request.Querystring["stylesheet"] != null) {
    Response.Cookies["stylesheet"].Value = Request.QueryString["stylesheet"];
    Response.Redirect(<Current Page>);
}

Ensuite, où vous définissez vos feuilles de style:

if (Request.Cookies["stylesheet"] != null) {
    // New Stylesheet
} else {
    // Default
}

Je travaille sur un site web qui passera à un nouveau style à une date fixe. Le site est construit en HTML et en CSS sémantique, de sorte que le changement devrait juste exiger un changement de référence CSS. Je travaille avec un concepteur qui devra être capable de voir à quoi il ressemble, ainsi qu'avec un client qui devra être capable d'examiner les mises à jour de contenu dans le look actuel ainsi que les progrès de la conception sur le nouveau look.

Je prévois d'utiliser une valeur magique de chaîne de requête et / ou un lien javascript dans le pied de page qui écrit un cookie pour sélectionner la nouvelle page CSS. Nous travaillons dans ASP.NET 3.5. Des recommandations?

Je devrais mentionner que nous employons les commentaires conditionnels d'IE pour le support d'IE8, 7, et 6. Je peux créer une fonction qui fait un remplacement:

<link href="Style/<% GetCssRoot() %>.css" rel="stylesheet" type="text/css" />
<!--[if lte IE 8]>
    <link type="text/css" href="Style/<% GetCssRoot() %>-ie8.css" rel="stylesheet" />
<![endif]-->
<!--[if lte IE 7]>
    <link type="text/css" href="Style/<% GetCssRoot() %>-ie7.css" rel="stylesheet" />
<![endif]-->
<!--[if lte IE 6]>
    <link type="text/css" href="Style/<% GetCssRoot() %>-ie6.css" rel="stylesheet" />
<![endif]-->

Je suggère de stocker la sélection de la feuille de style dans la session afin que vous ne deviez pas compter sur la clé de la chaîne de requête étant toujours présente. Vous pouvez vérifier la session dans Page_Load et ajouter la référence de feuille de style appropriée. Il semble que ce soit une situation temporaire / de développement, alors allez avec tout ce qui est facile et fonctionne.

if (!String.IsNullOrEmpty(Request.QueryString["css"]))
  Session.Add("CSS",Request.QueryString["css"]);

Vous devriez regarder dans ASP.NET thèmes ASP.NET , c'est exactement ce qu'ils sont utilisés pour. Ils vous permettent également de personnaliser les contrôles, ce qui signifie qu'ils ont un ensemble d'attributs par défaut.





css