gpt4 book ai didi

CSS3 箭头超链接

转载 作者:太空宇宙 更新时间:2023-11-03 23:41:38 27 4
gpt4 key购买 nike

尝试使用 CSS 制作箭头链接。 This one在 Firefox 中工作,但在 IE 和基于 webkit 的浏览器中有箭头位置的问题。双 div 用于居中链接内容。有什么建议吗?

content
<a href="#" class="readmore">
<div>
<div>
link content
</div>
</div>
</a>
content

CSS

.readmore {
text-decoration:none;
}
.readmore > div {
display: table;
height: 30px;
//width: 100%;
background: #008a00;
transition: background 0.2s;
}
.readmore > div:hover {
background:orange;
}
.readmore > div::after {
content:"";
display:inline;
position:absolute;
border: 15px solid;
margin-top:-15px;
border-color:transparent transparent transparent #008a00;
transition: border-left-color 0.2s;
}
.readmore > div::before {
content:"";
display:inline-block;
width:6px;
position: static;
background:#008a00;
transition: background 0.2s;
}
.readmore > div:hover::after {
border-left-color:orange;
}
.readmore > div > div {
display: table-cell;
//text-align: center;
vertical-align: middle;
color:white;
}

最佳答案

您应该为 :after 元素将 top 显式设置为 0,并且还记得设置 position:relative 用于 div 元素,以便绝对定位按预期工作:

.readmore > div::after {
...
top:0;
}

.readmore > div {
...
position:relative;
}

Fiddle

注意:应删除负值 margin-top。你的问题的原因是你使用负 margin-top (可能通过反复试验直到它在 FF 中看起来正常),但位置也取决于 top。这些属性的默认值由不同的浏览器实现不同,唯一的解决方案是按顺序设置它是显式设置topleft和记住确定绝对定位元素的包含 block 的规则。 (位置为 absoluterelative 的最近祖先)。

关于CSS3 箭头超链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22721818/

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