6

我的表格由 2 列表格格式化。在左栏中,我使用 a <label>,在右栏中使用 a <input type="text">。某些输入框是必需的。所以要求是对于所有强制输入,标签旁边应该有一个红色星号。然而,标签的设计使其始终后跟换行符,因此星号自动位于下方。确保不会发生这种情况的最佳方法是什么,并且星号位于标签旁边的正确位置?我认为该<div float="left>选项不适用于表格。这是所要求的代码;

<tr>
                <td class="leftCell"><span style="white-space: nowrap;"><label for="Subcontractor_CompanyName">Company</label><span style="display: inline;" class="errorHighlight">*</span></span></td>
                <td class="rightCell"><input style="width: 300px;" id="Subcontractor_CompanyName" name="Subcontractor.CompanyName" value="096 club" type="text" data-val-required="Must enter the Company Name" data-val="true">
                    <span class="field-validation-valid" data-valmsg-replace="false" data-valmsg-for="Subcontractor.CompanyName">*</span></td>
            </tr>

我尝试使用<span style="white-space: nowrap;">失败。

4

4 回答 4

15

或者,如果他们给出了<label>as 块,您可以这样做:

label {display: inline;}
于 2013-01-30T15:56:49.340 回答
3

如果您能够更改标记,则可以将星号放在标签内。

就像是:

<label>Name:<sup>*</sup></label>
<input type="text" name="name" />

和 CSS:

label sup { color: red; }

结果如下:http: //jsfiddle.net/ByGVE/

于 2013-01-30T16:02:35.740 回答
2

给定默认浏览器默认 CSS 和足够宽度以容纳其旁边的输入,标签不会触发新行。

您可能display: block在标签上设置了一些 CSS。而是将其设置在输入上。

于 2013-01-30T15:57:48.810 回答
0

使用 style="white-space: pre-wrap;"

于 2017-12-23T20:39:32.717 回答