将类添加到HTML文本(asp .net)

时间:2013-09-04 23:56:39

标签: html asp.net css label

我的页面上有标签控件。在后面的代码我调用一个直接返回HTML文本的Web服务。例如:

string htmlFromWebService = client.ReturnHTML();
lblMyLabel.Text = htmlFromWebService;

字符串htmlFromWebService包含:

<h1 class='Class1'>
    HTML TEXT
</h1>
<div class='Class2'>
    Text 1<br />
    <br />
    Text 2<br />
    <br />
    Text n<br />
    <br />
</div>

现在我已经知道从Web服务返回的HTML包含一个名为Class2的类。我想做的就是 - 添加一些(边距,填充等)css依赖于该div。我怎样才能做到这一点?我不想像htmlFromWebService.replace那样进行字符串替换(“class ='Class2'”,“class ='Class2'cssclass =”myclass“”);

我想知道是否有任何正确或更好的方法。

感谢。

3 个答案:

答案 0 :(得分:1)

在标记中添加样式块,如下所示:

<style type="text/css">
    h1.Class1 {
        margin: 5px;
        padding: 5px;
    }
    div.Class2 {
        margin: 10px;
        padding: 10px;
    }
</style>

注意:h1.Class1语法是一个选择器,用于查找类值为Class1的所有H1标记。

OR

将CSS放入样式表(Example.css),如下所示:

h1.Class1 {
    margin: 5px;
    padding: 5px;
}
div.Class2 {
    margin: 10px;
    padding: 10px;
}

然后在你的标记中你需要引用样式表,如下所示:

<link rel="stylesheet" type="text/css" href="Example.css" />

答案 1 :(得分:1)

我不认为你可以用html字符串创建一个对象,如果那是你的要求...... 如果您不能使用css(如Karl Anderson所说),我建议使用字符串方法来实现该功能。

例如:(请注意,此代码仅在只有一个对象具有在stringToSearch中定义的文本时才有效)

string stringToSearch = "Class2";
int indexOfClass2 = htmlFromWebService.IndexOf(stringToSearch);
string myAttributes = @" style='background-color: red;'";

string finalHtml = htmlFromWebService.Substring(0, indexOfClass2 + stringToSearch.Length+1);
finalHtml += myAttributes;
finalHtml += htmlFromWebService.Substring(indexOfClass2 + stringToSearch.Length+1);

答案 2 :(得分:1)

对不起双重帖子,我刚发现:

Build HtmlGenericControl from a string of full html

也许它可以帮到你,是一种从字符串html创建控件的方法。 :)