【问题标题】:How can I set my Page styles and themes without using Page.Theme property?如何在不使用 Page.Theme 属性的情况下设置我的页面样式和主题?
【发布时间】:2012-09-03 01:32:14
【问题描述】:

我的页面是用两个样式表设计的,form.css 和styles.css,我想根据域名动态设置它们的路径。

这是我为动态更改它们而编写的代码。可以,但是在切换到新主题之前会出现闪烁,如何在不使用Page.Theme属性的情况下设置页面样式和主题?

在客户端

$(document).ready(function () {
    function preloadFunc() {
        var foldername = '<%= theme%>';
        $('#lnkCssForm').attr('href', 'css/' + foldername + '/form.css');
        $('#lnkCssStyles').attr('href', 'css/' + foldername + '/styles.css');
    }
    window.onpaint = preloadFunc();
});

在服务器端(在页面预初始化)

theme = Session["domainTheme"].ToString();

【问题讨论】:

    标签: c# javascript styles themes stylesheet


    【解决方案1】:

    您为什么要为此使用 javascript(以及在 dom-ready 上)?难怪这会导致“闪烁”。为什么不直接从模板/部分/任何输出头部的样式输出路径?

    <head>
       <link rel="stylesheet" type="text/css" href="css/<%= theme %>/form.css" media="all">
       <link rel="stylesheet" type="text/css" href="css/<%= theme %>/styles.css" media="all">
    </head>
    

    您不想为此使用Page.Theme 的原因是什么?这正是它的目的......

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-09
      • 2013-05-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-27
      相关资源
      最近更新 更多