gpt4 book ai didi

css - 如何在纯CSS中创建不接触边缘的双边框?

转载 作者:行者123 更新时间:2023-12-02 07:05:28 25 4
gpt4 key购买 nike

在导航设计中,我需要这样设置边框。我知道how to create double border但不知道如何创建顶部和底部有间隙的边框。

enter image description here

我知道可以使用图像来完成,但很想知道是否可以只用 CSS 制作

最佳答案

是的,仅使用 CSS 即可轻松完成。

demo

HTML:

<ul class='navigation'>
<li><a href='#'>nav item</a></li>
<!-- as many navigation items as you would like -->
<li><a href='#'>nav item</a></li>
</ul>

相关CSS:

.navigation { padding: 0; list-style: none; }
.navigation li {
float: left;
padding: .35em 0;
border-top: solid 2px #e4e4e3;
border-bottom: solid 3px #94a10f;
background: linear-gradient(#fafafa, #e5e5e5);
}
.navigation a {
display: block;
padding: .5em;
border-left: solid 1px #fff;
border-right: solid 1px #a4a4e3;
color: #000;
text-decoration: none;
}
.navigation li:first-child a { border-left: none; }
.navigation li:last-child a { border-right: none; }

或者,如果您不想在顶部和底部有一个不可点击的区域,您可以尝试另一种方式:

demo

CSS:

.navigation {
display: inline-block;
overflow: hidden;
padding: .35em 0;
border-top: solid 2px #e4e4e3;
border-bottom: solid 3px #94a10f;
background: linear-gradient(#fafafa, #e5e5e5);
list-style: none;
}
.navigation li {
float: left;
border-left: solid 1px #fff;
border-right: solid 1px #a4a4e3;
}
.navigation a {
display: block;
padding: .5em;
margin: -.35em 0;
color: #000;
text-decoration: none;
}
.navigation li:first-child { border-left: none; }
.navigation li:last-child { border-right: none; }

第三种方法也是将可点击区域扩展到边框,即在链接上使用伪元素来获取横向边框。

demo

CSS:

.navigation { margin-top: 7em; list-style: none; }
.navigation li {
float: left;
background: linear-gradient(#fafafa, #e5e5e5);
}
.navigation a {
display: block;
position: relative;
padding: .85em;
border-top: solid 2px #e4e4e3;
border-bottom: solid 3px #94a10f;
color: #000;
text-decoration: none;
}
.navigation a:before {
position: absolute;
top: .35em; bottom: .35em; left: 0;
border-right: solid 1px #fff;
border-left: solid 1px #a4a4e3;
content: '';
}
.navigation li:first-child a:before { border: none; }

关于css - 如何在纯CSS中创建不接触边缘的双边框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12580366/

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