c# - 如何更改没有 ID 的类 css 的属性?

标签 c# asp.net .net css

我正在制作一个属性可以更改的用户控件

我有一个 HTML (.aspx):

<div>
    <ul>
        <li id="li_id" runat="server" class="myStyle" visible="false"></li>
    </ul>
</div>

(我的第一个 li 是 false,另一个将被动态添加,并希望确保至少有一个引用 css 类)

我的代码隐藏:

for (int i = 0; i < fotos.Count(); i++)
{
    if (File.Exists(Server.MapPath((fotos[i]))))
    {
        content_slider_inside.InnerHtml += @"<li id='img" + i.ToString() + "'><IMG SRC='" + fotos[i] + "' HEIGHT='490PX' /></li>";
        navigation.InnerHtml += "<li class='myStyle' runat='server'><a href='#img" + (i+1).ToString() + "'>" + (i+1).ToString() + "</a></li>";
    }
}

我的 CSS (.css)

.myStyle
{
    /*empty*/
}

如何在不使用 ID 代码的情况下添加我的样式属性?(因为它是生成的 dinicamente) 例如:

myStyle["background-color"]="red";

为所有生成动态变化的li css属性

我不想用 javascript 或 jquery 解决它

非常感谢

最佳答案

使用“class”属性和 CSS 是设置元素样式的好方法。目前还不清楚你想“动态”做什么,但也许简单地改变你的 CSS 就足够了(如果唯一的原因是提到 CSS 的类,你真的不需要不可见元素):

.myStyle
{
    background-color:"red";
}

如果您想单独设置它们的样式,您可以直接在 HTML 中内联:

navigation.InnerHtml += "<li style='background-color:red;' ...

注意:如果您构建控件树而不是使用 InnerHtml 属性会更容易。至少不要指定 runat='server',因为在使用 InnerHtml 属性时它没有任何值(value)。

关于c# - 如何更改没有 ID 的类 css 的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10803172/

相关文章:

c# - 有没有办法在 C# 中声明一组具有相同访问器的成员?

c# - F#:如何将处理程序中的函数设置为 "await",以便异常仍然冒泡到处理程序?

c# - IHostedService/BackgroundService 按计划运行(与 Task.Delay 相反)

c# - 在不同线程中抛出异常时在当前线程中捕获异常

javascript - Asp.Net Core 中 webpack 上的 sass-loader

c# - 如何在 ASP.NET 中多次(加法)修改当前页面?

c# - 可选注入(inject)当前用户的最佳实践

javascript - 从 HTML 中的 if 语句调用 Javascript 函数

c# - 如何手动滚动面板?

c# - sql server 数据库中的审计记录更改