有一个div标签的小问题,因为它没有拿起我拥有的CSS。
当我在Firefox和Chrome中检查元素时,我注意到了。我看到一个带有div标签的html元素,它正确地应用了CSS。然后我看另一个,虽然html代码几乎完全相同,但它没有应用CSS。
这是一个带有div标签的html代码:
<tr>
<td class="style1">
<label><div ID="Login">Login:</label>
</td>
<td>
<input class="login" id="loginpassword" type="text" name="username"
maxlength="75">
</div>
</td>
</tr>
以下是loginpassword ID的CSS:
#loginpassword {width:150px;}
这是我的第二个html代码片段(不应用CSS的代码):
<tr>
<td class="style1">
<label><div ID="Password">Password:</label>
</td>
<td>
<input class="login" id="loginpassword2" type="password" name="password"
maxlength="75">
</div>
</td>
</tr>
这是loginpassword2 ID的CSS:
#loginpassword2 {width:150px;}
因此它们几乎100%相同,但loginpassword2的ID不应用CSS,而loginpassword则应用CSS。奇怪。我无法理解为什么一个有效,另一个没有。
有什么线索吗?如果您需要更多信息,请告诉我。
感谢您提前回复。
答案 0 :(得分:4)
首先:
<td class="style1">
<label><div ID="Login">Login:</label>
</td>
<td>
<input class="login" id="loginpassword" type="text" name="username" maxlength="75">
</div>
这是非常糟糕的HTML。您无法在<div>
中打开<td>
标记,并在另一个<td>
内关闭它。
考虑验证您的HTML:http://validator.w3.org/#validate_by_input+with_options
不仅如此,你也在使用类login
作为两者,所以为什么不利用它,因为你的样式是相同的呢?
.login {width:150px;}
这会影响login
类的所有元素。
进一步阅读:
CSS ID&amp;类
有效的HTML
答案 1 :(得分:0)
将css应用于课程级别而不是id。
答案 2 :(得分:0)
您可以更改您的html布局,如
<强> HTML 强>
<table>
<tr>
<td class="style1">
<label id="lbllogin" runat="server">Login:</label>
</td>
<td>
<input class="login" id="loginpassword" type="text" name="username"
maxlength="75" />
</td>
</tr>
</table>
<br>
<table>
<tr>
<td class="style1">
<label id="lblpwd" runat="server">Password:</label>
</td>
<td>
<input class="login" id="loginpassword2" type="password" name="password"
maxlength="75" />
</td>
</tr>
</table>
<强> CSS 强>
#loginpassword {width:150px;}
#loginpassword2 {width:150px;}
希望它适合你。
答案 3 :(得分:-1)
做一件事。只需从两个输入标记中删除class =“login”
即可