未在ASP.NET代码中动态设置CSS样式

时间:2015-09-15 07:27:38

标签: c# css asp.net web

我试图通过后面的代码更改一组asp.net控件的CSS类和属性:

ASP.NET:

<span id="followbtn_mainbtn" runat="server" class="follow-btner" onclick="profile_followers_follow(this)">

        <img id="img_followingbtn" runat="server" class="profile-single-profile-follow-btn-img" src="icons/profico/following.png" style="display: none;">
        <img id="img_unfollowbtn" runat="server" class="profile-single-profile-unfollow-btn-img" src="icons/profico/unfollow.png" style="display: none;">
        <img id="img_followicon" runat="server" class="profile-single-profile-follow-icon" src="icons/profico/followIcon.png">

        <span id="span_following_text" runat="server" class="profile-single-profile-follow-btn-following">Follow</span>
        <span id="span_unfollow_text" runat="server" class="profile-single-profile-follow-btn-unfollow" style="display: none;">Unfollow</span>

      </span>

代码:

followbtn_mainbtn.Attributes.CssStyle.Add("className", "follow-btner-no-hoverer");
span_unfollow_text.InnerText = "Following";
img_followingbtn.Attributes.CssStyle.Add("display", "block");
img_unfollowbtn.Attributes.CssStyle.Add("display", "block");
span_unfollow_text.Attributes.CssStyle.Add("display", "block");

然而,当我运行时,我看不到所需的结果。如果我将相应的类硬编码到控件,它们可以正常工作,但代码不会动态地执行。

我做错了什么?

3 个答案:

答案 0 :(得分:1)

你是否在回发期间更新了css?首先尝试在窗体上添加对Page_Load方法的更改,这将告诉您在设置样式和类时代码是否正常工作。如果代码有效,那么我会确保你有EnableViewState =&#34; false&#34;在您的页面和/或跨度的父控制。

答案 1 :(得分:0)

这实际上是一个简单的错误。我使用了错误的代码来更改名为&#34; followbtn_mainbtn&#34;的范围的css类。

我替换了

followbtn_mainbtn.Attributes.CssStyle.Add("className", "follow-btner-no-hoverer");

使用此

followbtn_mainbtn.Attributes["class"] = "follow-btner-no-hoverer";

瞧!木已成舟。感谢您的所有答案和评论:)

答案 2 :(得分:0)

您可以使用此代码更改

背后的代码中的css
 img_followingbtn.Style.Add("display", "block");