我需要更改此标签中一个字符的颜色,特别是*
这需要针对几个部分进行更改,但不会针对其他部分进行更改。我有这样的内联方式吗?
<td>
<s:textfield label="* Bank Name" name="..." size="40" />
</td>
答案 0 :(得分:1)
您应该能够将字符包装在<span>
标签中并在CSS中设置颜色。我不熟悉struct标记,但你应该能够应用相同的概念。如果没有,this文章将有助于您使用<label>
和<input>
标记来完成您想要的内容。
试试这个:
HTML:
<table>
<tr>
<td>
<label><span class="diff-color">*</span> Bank Name</label>
</td>
</tr>
</table>
CSS:
span.diff-color {
color: red;
}
这将设置所有span元素的颜色,类名为#34; diff-color&#34;变红了。
答案 1 :(得分:0)
默认情况下,Struts2使用主题(默认情况下为XHTML)为元素生成通用的HTML MarkUp。
正如@ AleksandrM的评论所指出的那样,requiredLabel
属性会生成一个带有星号的范围,您可以使用CSS设置样式。
一定要自己给id
元素,否则Struts会自己生成一个难以处理的独特元素(表单名称_ elementname加上一个数字或类似的东西)。
然后这个
<s:textfield id = "bankName"
name = "bankName"
label = "Bank Name"
requiredLabel = "true" />
<s:textfield id = "bankAddress"
name = "bankAddress"
label = "Bank Address"
requiredLabel = "true" />
将生成以下HTML:
<label for="bankName"><span>*</span>Bank Name</label>
<input type="text" id="bankName" name="bankName" />
<label for="bankAddress"><span>*</span>Bank Address</label>
<input type="text" id="bankAddress" name="bankAddress" />
您可以轻松设置样式:
<style>
/* all "*" spans */
label > span {
color: silver;
}
/* differet style for bankName's "*" span */
label[for=bankName] > span {
color: red;
}
/* differet style for bankAddress's "*" span */
label[for=bankAddress] > span {
color: green;
}
</style>