gpt4 book ai didi

css - 在悬停 CSS 上更改内容

转载 作者:行者123 更新时间:2023-12-02 08:31:26 26 4
gpt4 key购买 nike

我想在悬停时改变列表的内容,即罗马变成数字 1, 2, 3

我尝试了 li:hover li:hover:after 但两者都会添加现有内容的内容

ul {
min-height: 30px;
width: 180px;
margin-left:-30px;
list-style-type: none;
counter-reset: chrome-counter;
}

li:before {
content: counter(chrome-counter, lower-roman);
padding: 1px 2px;
margin-right: 0.2em;
font-weight: bold;
}

li {
margin: 2px 0;
padding: 1px 4px;
font: normal bold 18px/32px ms-sans, geneva, sans-serif;
display: inline-block;
width: 40px;
text-align: center;
color: #FFF;
counter-increment: chrome-counter;
}

li:hover {
padding: 4px 8px;
color: #333;
/*content : '..';*/
counter-reset : counter(chrome-counter, upper-roman);
box-shadow: 0px 0px 4px #222;
border-radius: 1.5em .5em / 2.5em 2em;
}

.cc1 {
background-color: #FF6766;
color: #FFF;
}
 <ul class="scheme">
<li class="cc1" ></li>
<li class="cc1" ></li>
<li class="cc1" ></li>
</ul>

最佳答案

如果你正在处理 :before 伪元素,你需要将所有状态应用到那个确切的元素......所以不是主元素,也不是 :after 元素,而是需要改变的元素,在您的情况下是 li:before:

ul {
min-height: 30px;
width: 180px;
margin-left:-30px;
list-style-type: none;
counter-reset: chrome-counter;
}

li:before {
content: counter(chrome-counter, lower-roman);
padding: 1px 2px;
margin-right: 0.2em;
font-weight: bold;
}

li {
margin: 2px 0;
padding: 1px 4px;
font: normal bold 18px/32px ms-sans, geneva, sans-serif;
display: inline-block;
width: 40px;
text-align: center;
color: #FFF;
counter-increment: chrome-counter;
}

li:hover {
padding: 4px 8px;
color: #333;
/*content : '..';*/
counter-reset : counter(chrome-counter, upper-roman);
box-shadow: 0px 0px 4px #222;
border-radius: 1.5em .5em / 2.5em 2em;
}

li:hover:before {
content: counter(chrome-counter, upper-roman);
padding: 1px 2px;
margin-right: 0.2em;
font-weight: bold;
}

.cc1 {
background-color: #FF6766;
color: #FFF;
}
 <ul class="scheme">
<li class="cc1" ></li>
<li class="cc1" ></li>
<li class="cc1" ></li>
</ul>

这是一个按照您在评论中要求的那样更改为 HTML 内容的示例:

ul {
min-height: 30px;
width: 180px;
margin-left:-30px;
list-style-type: none;
counter-reset: chrome-counter;
}

li:before {
content: counter(chrome-counter, lower-roman);
padding: 1px 2px;
margin-right: 0.2em;
font-weight: bold;
}

li {
margin: 2px 0;
padding: 1px 4px;
font: normal bold 18px/32px ms-sans, geneva, sans-serif;
display: inline-block;
width: 40px;
text-align: center;
color: #FFF;
counter-increment: chrome-counter;
}

li:hover {
padding: 4px 8px;
color: #333;
/*content : '..';*/
counter-reset : counter(chrome-counter, upper-roman);
box-shadow: 0px 0px 4px #222;
border-radius: 1.5em .5em / 2.5em 2em;
}

li:hover:before {
content: "";
padding: 1px 2px;
margin-right: 0.2em;
font-weight: bold;
}

li span {display: none}
li:hover span {display: initial}

.cc1 {
background-color: #FF6766;
color: #FFF;
}
 <ul class="scheme">
<li class="cc1" ><span>#</span></li>
<li class="cc1" ><span>0</span></li>
<li class="cc1" ><span>*</span></li>
</ul>

关于css - 在悬停 CSS 上更改内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26436879/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com