2010-11-16 77 views
0

我希望这里有人能帮助我在里面,我是比较新的CSS和jQuery,但我似乎无法环绕我我的头在这种情况下做错了。设置背景颜色或一个div失败时给字段

我有一个形式,标签,输入和选择。我找到了一个有用的教程,向我展示了如何在输入输入或选择时向父div添加背景颜色,在我继续前进时删除了该输入或选择。本教程是在这里,http://css-tricks.com/improved-current-field-highlighting-in-forms/

我使用的CSS真的很简单:

.curFocus {background-color: #fdecb2} 

当一些简单的jQuery它奇妙的工作使用。然后,我把所有的标签和输入放在一个fieldset中,现在,我的css不再被启用。

这个例子的工作原理:

<div class="row"> 
    <label for="username">Your name:</label> 
    <input type="text" name="username" id="username"/> 
</div> 

这个例子不起作用:

<fieldset class="align"> 
    <div class="row"> 
    <label for="username">Your name:</label> 
    <input type="text" name="username" id="username"/> 
    </div> 
</fieldset> 

我对页面的CSS是这样的:

.align { 
    border: none; 
    border-width: 0px; 
    margin: 0px; 
    padding: 0px; 
    padding-top: 1px; 
} 
.align label { 
    float: left; 
    width: 45%; 
    padding-top: 0.6em; 
    padding-left: 1em; 
    margin-right: 0.5em; 
} 
.align input { 
    float: left; 
    width: 45%; 
} 
.align select { 
    float: left; 
    width: 46%; 
} 

有谁知道我可以重新启用活动字段突出显示?

+0

它应该工作,尽量手动插入CSS即:.row {背景颜色:#fdecb2}到CSS。它工作吗? – 2010-11-16 14:14:17

+0

仍然有效。 – aodj 2010-11-16 14:26:10

回答

1

我认为这是行不通的,因为DIV的是块元素,而你漂浮在它的输入/标签要素。由于这些漂浮物,div没有任何高度。尝试添加到您的CSS文件:

.align div { 
    overflow: hidden; 
} 

可能解决它?

编辑 有关清除漂浮的详细信息,请this site of PPK

+0

太棒了,修复了它。我将它添加到CSS中,他们现在显示得很好,谢谢! – aodj 2010-11-16 14:40:33

+0

是的浮动和块可以变得非常混乱有时......很高兴帮助! – 2010-11-16 14:43:56

0

认为TI是它们的宽度。你在标签和输入上有45%,使用这个或使用你的,只需设置字段的宽度。并取出padding-top: 0.6em;

.align { 
    border: none; 
    border-width: 0px; 
    margin: 0px; 
    padding: 0px; 
    padding-top: 1px; 
    width:300px; 
} 
.align label { 
    float: left; 
    width: 45%; 
    padding-left: 1em; 
    margin-right: 0.5em; 
} 
.align input { 
    float: left; 
    width: 45%; 
} 
.align select { 
    float: left; 
    width: 46%; 
} 

take a look.