防止垂直菜单出现双边框
Prevent double borders in vertical menu
我正在创建一个垂直菜单,我的 CSS 样式意味着当我 select 或将鼠标悬停在按钮上时会添加一个边框。问题是,当将按钮悬停在 selected 按钮下方时,会创建一个双边框(底部和顶部),如下所示:
我的代码是这样的:
ul {
list-style-type: none;
}
.selected {
background-color: #f9f9f9;
border: 1px solid #dcdee2;
border-radius: 1px;
}
.card {
cursor: pointer;
padding: 7px 0 7px 20px;
}
.card:hover {
background-color: #f9f9f9;
border: 1px solid #dcdee2;
border-radius: 1px;
}
.selected a {
font-weight: bold:
}
.card a {
color: #121212;
}
<ul>
<li class="card selected">
<a href="#">Home</a>
</li>
<li class="card">
<a href="#">Information</a>
</li>
</ul>
我该如何解决这个问题?
ul {
list-style-type: none;
}
.selected {
background-color: #f9f9f9;
border: 1px solid #dcdee2;
border-radius: 1px;
}
.card {
cursor: pointer;
padding: 7px 0 7px 20px;
}
.card:hover {
background-color: #f9f9f9;
border: 1px solid #dcdee2;
border-radius: 1px;
}
.selected a {
font-weight: bold:
}
.card a {
color: #121212;
}
.selected + .card:hover, .card:not(.selected):hover + .selected {
border-top: none;
}
<ul>
<li class="card">
<a href="#">Home</a>
</li>
<li class="selected card">
<a href="#">Information</a>
</li>
</ul>
当您将鼠标悬停时,内容会发生非常非常轻微的变化,但我相信您可以找到解决方法。
我正在创建一个垂直菜单,我的 CSS 样式意味着当我 select 或将鼠标悬停在按钮上时会添加一个边框。问题是,当将按钮悬停在 selected 按钮下方时,会创建一个双边框(底部和顶部),如下所示:
我的代码是这样的:
ul {
list-style-type: none;
}
.selected {
background-color: #f9f9f9;
border: 1px solid #dcdee2;
border-radius: 1px;
}
.card {
cursor: pointer;
padding: 7px 0 7px 20px;
}
.card:hover {
background-color: #f9f9f9;
border: 1px solid #dcdee2;
border-radius: 1px;
}
.selected a {
font-weight: bold:
}
.card a {
color: #121212;
}
<ul>
<li class="card selected">
<a href="#">Home</a>
</li>
<li class="card">
<a href="#">Information</a>
</li>
</ul>
我该如何解决这个问题?
ul {
list-style-type: none;
}
.selected {
background-color: #f9f9f9;
border: 1px solid #dcdee2;
border-radius: 1px;
}
.card {
cursor: pointer;
padding: 7px 0 7px 20px;
}
.card:hover {
background-color: #f9f9f9;
border: 1px solid #dcdee2;
border-radius: 1px;
}
.selected a {
font-weight: bold:
}
.card a {
color: #121212;
}
.selected + .card:hover, .card:not(.selected):hover + .selected {
border-top: none;
}
<ul>
<li class="card">
<a href="#">Home</a>
</li>
<li class="selected card">
<a href="#">Information</a>
</li>
</ul>
当您将鼠标悬停时,内容会发生非常非常轻微的变化,但我相信您可以找到解决方法。