我有这样一个元素块:
<div class="dropdown">
<button class="btn" >
<i class="fa fa-search"></i>
<i class="fa fa-caret-down"></i>
</button>
<input type="search" class="search-field" placeholder="Search...">
<div class="dropdown-content">
<a href="#">Link 1</a>
<a href="#">Link 2</a>
<a href="#">Link 3</a>
</div>
</div>
现在,当我悬停在按钮上时,我想显示dropdown-content
。 .btn:hover .dropdown-content{ dislpay: block; }
无效,但是在整个块(dropdown
)上空盘旋确实有效。也可以将整个块包装在另一个块中,并将<input>
拉到外部块。但是我在悬停<input>
时遇到了类似的问题。
我的问题现在。
<input>
上时,如果它位于外部区域(此处
未在上面的代码中提供)答案 0 :(得分:2)
没有元素.dropdown-content
。 .btn
是.btn:hover + input + .dropdown-content {
display: block;
background: #000;
}
的兄弟姐妹。所以你可以使用以下代码。请检查......
<div class="dropdown">
<button class="btn" >
button
<i class="fa fa-search"></i>
<i class="fa fa-caret-down"></i>
</button>
<input type="search" class="search-field" placeholder="Search...">
<div class="dropdown-content">
<a href="#">Link 1</a>
<a href="#">Link 2</a>
<a href="#">Link 3</a>
</div>
</div>
&#13;
.btn:hover ~ .dropdown-content {
&#13;
或者你也可以使用{{1}}这个CSS。