有没有办法让标签响应焦点.我有一些代码,其中文本字段在焦点上具有不同的样式.然而,标签也需要略有不同的风格.我尝试了这个,但它没有影响标签.
#header .search label {
background:url(http://www.golfbrowser.com/images/icons/search.png) left top no-repeat;
padding-left:20px;
height:20px;
float:right;
}
#header .search label:focus {
background:url(http://www.golfbrowser.com/images/icons/search-z.png) left top no-repeat;
padding-left:20px;
height:20px;
float:right;
}
#header .search input {
padding:0px;
border:0px;
width:140px;
height:20px;
float:left;
padding-right:10px;
background:url(http://www.golfbrowser.com/images/icons/searchbar.png) right top no-repeat;
}
#header .search input:focus {
padding:0px;
width:190px;
height:20px;
float:left;
padding-right:10px;
background:url(http://www.golfbrowser.com/images/icons/searchbar-z.png) right top no-repeat;
}
Run Code Online (Sandbox Code Playgroud)
标签包含图像和圆角的另一部分,它也必须改变颜色才能使字段看起来正确.
有任何想法吗,
奇妙
我的目标是:
我已经尝试过这个解决方案,效果很好:当用户在 DIV 外部单击时,使用 jQuery 隐藏 DIV
但我想尝试一些不同的东西,我想尝试focus()
所以我编写了这段代码:
div
{
width: 100px;
height: 100px;
border: 1px solid blue;
}
div:focus
{
background-color: red;
}Run Code Online (Sandbox Code Playgroud)
<script>
function show()
{
document.getElementById("element").focus();
}
</script>
<input type="button" onclick="show()" value="click me!"/>
<div id="element"tabindex="-1">
</div>
After you clicked the button, click elsewhere to remove the red backgroundRun Code Online (Sandbox Code Playgroud)
它工作得很好,现在我想隐藏该块并在用户单击按钮时显示它,我刚刚添加了display: block和display: none,这是两个版本之间的唯一区别
div
{
width: 100px;
height: 100px;
border: 1px solid blue;
display: none;
}
div:focus
{
background-color: red; …Run Code Online (Sandbox Code Playgroud)