You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用CSS或SVG实现矩形内部包含红色菱形的效果?

无图片实现方案

下面提供两种完全不需要引入图片的实现方式,都可以达成你要的效果:

方案1:纯CSS实现(基于现有代码改造)

不需要新增DOM节点,直接在你现有.rectangle的CSS基础上追加伪元素样式即可:

/* 你原有代码保留 */
.rectangle {
  width: 98px;
  height: 45px;
  border: 1px solid white;
  display: inline-block;
  position: relative;
  border-bottom: 2px solid white;
  /* 可选:如果怕菱形超出矩形可以加 overflow: hidden; */
}

/* 新增伪元素生成红色菱形 */
.rectangle::after {
  content: '';
  position: absolute;
  /* 可自行调整left数值修改菱形的水平位置 */
  left: 16px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  /* 可修改宽高调整菱形大小 */
  width: 16px;
  height: 16px;
  background: #ff0000;
}

原理是把正方形伪元素旋转45度得到菱形,通过定位调整到矩形内的目标位置即可。

方案2:SVG实现

如果需要更好的矢量缩放效果、或者要把效果作为整体复用,可以用SVG实现,代码如下:

<svg width="98" height="45" viewBox="0 0 98 45" xmlns="http://www.w3.org/2000/svg">
  <!-- 白色边框矩形 -->
  <rect x="0.5" y="0.5" width="97" height="44" stroke="#fff" stroke-width="1" fill="none" />
  <line x1="0" y1="44" x2="98" y2="44" stroke="#fff" stroke-width="2" />
  <!-- 红色菱形,调整points属性的坐标可修改菱形位置和大小 -->
  <polygon points="23,22.5 31,14.5 39,22.5 31,30.5" fill="#ff0000" />
</svg>

你可以直接把这段SVG代码插入到HTML中使用,也可以转成data URI嵌入CSS作为背景图使用。


内容的提问来源于stack exchange,提问作者Oblivion

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 21:15:02