gpt4 book ai didi

html - 创建一个有尖边的 div

转载 作者:太空宇宙 更新时间:2023-11-04 10:10:45 27 4
gpt4 key购买 nike

我想创建一个包含图像和文本的 div,如下所示。

enter image description here

我在这里得到了类似这样的东西:

JSFiddle of pointed div

  .triangle-down {
background: white;
display: inline-block;
height: 125px;
margin-left: 20px;
margin-bottom: 55px;
position: relative;
width: 200px;
cursor: pointer;
border: red solid 2px;
}
img {
margin: 10px;
}
.triangle-down:before {
border-top: 20px solid red;
border-left: 101px solid transparent;
border-right: 101px solid transparent;
content: "";
height: 0;
left: -1px;
position: absolute;
top: 127px;
width: 0;
}
.triangle-down:after {
border-top: 20px solid white;
border-left: 100px solid transparent;
border-right: 100px solid transparent;
content: "";
height: 0;
left: 0;
position: absolute;
top: 125px;
width: 0;
}
<div class="triangle-down">
<img src="http://placehold.it/180x105">
</div>

我遇到的问题是:

(1) 当光标穿过有助于创建点的透明边框时,光标会变成形状外的指针。如果指针仅在形状的可见轮廓内出现,我会更喜欢它。

(2) 有更好的方法吗?我试图旋转一个 div 来创建点,因为我认为这可以解决指针问题,但我无法弄清楚如何以这种方式创建具有正确比例的等腰三 Angular 形。这也将允许我应用边框来创建轮廓,而不是像我在 JSFiddle 中那样覆盖两个三 Angular 形。有关更多信息,请参阅此帖子 - Speech bubble with arrow

最佳答案

这是一个使用transform: rotate

的版本

/*Down pointing*/
.triangle-down {
background: white;
display: inline-block;
height: 125px;
margin-left: 20px;
margin-bottom: 55px;
position: relative;
width: 200px;
cursor: pointer;
border: red solid 2px;
}
img {
position: relative;
margin: 10px;
z-index: 1
}
.triangle-down:before,
.triangle-down:after {
border-bottom: 2px solid red;
background: white;
content: '';
height: 50px;
left: 5px;
position: absolute;
top: 98px;
width: 54%;
transform: rotate(22deg);
z-index: 0;
}
.triangle-down:after {
left: auto;
right: 5px;
transform: rotate(-22deg);
}
<div class="triangle-down">
<img src="http://placehold.it/180x105">
</div>

关于html - 创建一个有尖边的 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37635732/

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