你可以看到有一点红色区域。此红色是主要div
背景颜色。这个div
里面有input
。
因此,如果单击红色区域,则可以看到搜索图标更改背景颜色。但是当您单击输入区域时,颜色将不会改变。我能在这做什么?
HTML:
<div class="tt" tabindex="2">
<div class="test"></div>
<input type="text" class="input" placeholder="Some text..."/>
</div>
CSS:
.tt {
width:500px;
height:50px;
margin:0px auto;
margin-top:100px;
background-color:red;
}
.test {
float:left;
position:absolute;
z-index:1;
width:50px;
height:50px;
background-color:blue;
border-radius:50%;
background-image:url(http://www.androidpolice.com/wp-content/uploads/2014/06/nexusae0_search.png);
background-size:50px;
transition: transform(rotate);
transition-duration: 400ms;
transition-timing-function: cubic-bezier(0.770, 0, 0.150, 1);
}
.tt:focus .test{
-webkit-transform: rotate(360deg);
border-radius:50%;
background-image:url(http://ajkdjournal.org/wp-content/uploads/2014/05/e62f58b03dbcfda4a54f6bac1057305e.png);
}
.input{
border:none;
outline:none;
padding:18px;
width:400px;
text-indent:40px;
}
答案 0 :(得分:2)
我在HTML和CSS中添加了一些更改。我希望它有助于demo
<div class="tt" tabindex="2">
<!-- note I changed the HTML structure + added changes in the CSS -->
<input type="text" class="input" placeholder="Some text..."/>
<div class="test"></div>
</div>
答案 1 :(得分:0)
您需要将输入放在.test div之前,然后使用兄弟选择器(+)。代码应该是:
HTML:
<div class="tt" tabindex="2">
<input type="text" class="input" placeholder="Some text..."/>
<div class="test"></div>
</div>
CSS:
.input:focus + .test{
-webkit-transform: rotate(360deg);
border-radius:50%;
background-image:url(http://ajkdjournal.org/wp-content/uploads/2014/05/e62f58b03dbcfda4a54f6bac1057305e.png);
}
希望这有帮助!