gpt4 book ai didi

html - 纯 HTML/CSS 在按钮下创建三 Angular 形指针

转载 作者:技术小花猫 更新时间:2023-10-29 12:28:29 25 4
gpt4 key购买 nike

目前我有一个看起来像这样的 div:

enter image description here

我需要编辑 HTML/CSS,使其显示如下,下方有一个小三 Angular 形。理想情况下,我想使用纯 HTML 和 CSS 来完成此操作,不使用图像文件。根据CSS-Tricks这是可以做到的。

enter image description here

HTML:

<ul id="nav">
<li class="active"><a href="#"><div class="triangle"></div>Dashboard</a></li>
<li><a href="users/index.html"><div class="triangle"></div>Manage Users</a></li>
<li><a href="tickets/index.html"><div class="triangle"></div>Manage Tickets</a></li>
<li><a href="reports/index.html"><div class="triangle"></div>Reports</a></li>
</ul>

CSS:

#nav {
float: right;
margin: 0;
padding: 8px 0 0 0;
list-style: none;
display: inline-block;
}

#nav li {
float: left;
padding: 7px 5px;
margin: 0 5px;
font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
font-weight: 300;
border-radius: 7px;
}

#nav li a {
color: #0b70cc;
text-decoration: none;
padding: 7px 5px;
}

#nav li.active a {
color: #ffffff;
}

#nav li.active {
background-color: #0b70cc;
color: white;
}

JSFiddle

如果有人能帮助我做到这一点,我将不胜感激!

最佳答案

http://cssarrowplease.com/ 处用箭头生成您自己的 div

你可以随心所欲地配置它,成为一个干净的 CSS


工作原理:
让我们用这种技术创建一个非常简单的三 Angular 形:

.container {
position: relative;
display: block;
width: 120px;
height: 50px;
background: blue;
}

.container:after{
position: absolute;
bottom: 0;
height: 0;
width: 0;
left: 50%;
border: 40px solid transparent;
border-bottom-color: red;
content: "";
}
<div class="container"></div>

重要的是我们应用边框的伪元素的height: 0; & width: 0。所以你可以想象一个没有大小的元素。这就是边界的起源。所以边界的每一边都是一个三 Angular 形(尝试用不同的颜色为每一边着色以理解它)。
因此,要创建“单个三 Angular 形”效果,只需在边框上应用透明颜色并为要显示的三 Angular 形着色即可。


替代:CSS Clip-Path

您现在可以使用带有 CSS 的新 clip-path 非常轻松地创建一个矩形。请注意浏览器支持。和往常一样,IE 和遗憾的是 Edge 都不会像 Opera Mini 那样支持它:Can I Use

简单示例:

.new_way {
position: relative;
margin: 100px auto;
background: #88b7d5;
width: 100px;
padding: 20px;
text-align: center;
}

.new_way::after {
content: '';
position: absolute;
top: 100%;
left: calc(50% - 10px);
background: #88b7d5;
width: 20px;
height: 20px;

/* The points are: (left top: x y, right top: x y, center bottom: x y) */
clip-path: polygon(0 0, 100% 0, 50% 100%);
}
<div class="new_way">
Clip Path
</div>

所以现在你只需要 1 行。不错,不是吗?

关于html - 纯 HTML/CSS 在按钮下创建三 Angular 形指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18208839/

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