分享

net下动态变换css样式或切换网页皮肤方法整理

 张金富 2011-08-04

用visual studio.net做网页开发的时候,需要变换css样式表来给网页换皮肤,怎么做?这里说的变换样式表,不是指更换样式表,而是动态变换或切换网站皮肤或主题。参考相关资料,飞龙整理本日志更新地址:http:///net-css-huan-pifu-yangshi,不定期修订。2009-0601第3次修订。

一、net下动态变换css方法一:

1.先参考使用如下代码:
<head>
<link id="mystylesheet" rel="stylesheet" type="text/css" runat="server" />
</head>

2.再在要更换css的网页里面使用以下代码:
sub page_load(sender as object, e as eventargs)
if not (ispostback)
mystylesheet.attributes.add("href","/css/feilong1.css")
end if

二、net下动态变换css方法二:通过加载不同css实现多皮肤界面切换。

<%@page language="c#"%>
<%@import namespace="system.data"%>

<script language="c#" runat="server">
public void page_load(object obj,eventargs e)
{
//创建服务器端控件
//指定的标记"link"初始化此类的新实例
htmlgenericcontrol objlink=new htmlgenericcontrol("link");
objlink.id=id;
objlink.attributes["rel"]="stylesheet";
objlink.attributes["type"]="text/css";
objlink.attributes["href"]="portal.css";
//此控件不产生任何可见输出,仅作为其他控件的容器,可在其中添加,插入或移除控件
mycss.controls.add(objlink);
}
</script>

<html>

<head>
<title>c#</title>
<asp:placeholder id="mycss" runat="server"></asp:placeholder>
</head>

<body bgcolor="#ffcc66" style="font:9pt">
<form runat="server">
</form>
</body>

</html>

三、net下动态变换css方法三:通过动态设置同类型控件样式来改变网页界面。

通过改变web控件的cssclass属性,可方便设置和修改控件样式。但实际开发中,一个个地设置控件cssclass属性,太繁琐,导致此思路应用不广。下面代码段演示了一次性改变页面同类型控件样式的方法,可实现简单skin变换。

public void page_load(object obj,eventargs e)
{
if(!page.ispostback){
//为页面的所有控件设置样式.
setcss(page.controls);
}
}

四、飞龙补充一下,有些朋友在visual studio下开发网页的时候,发现原Dreamweaver里面net下css样式失效的问题解决方法,可以参考日志:http:///aspnet-css-change-style-sheet

五、net下通过切换css来换皮肤,参考:http://www.cnblogs.com/kwklover/archive/2007/01/03/610822.html。最后看看这个 net下css调整工具:http://www./cssadapters

博主:飞龙.org

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多