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

如何使用CSS的div替换带圆圈的SVG叉号元素?

纯CSS替换SVG带圆圈叉号的实现方案

需求说明

将现有代码中通过SVG实现的带圆圈叉号,替换为纯CSS的div元素实现。


1. 简化HTML结构

直接移除原.exit容器内的所有SVG代码,保留空div即可:

<div class="exit"></div>

2. 修改CSS样式

保留原有的布局定位逻辑,用CSS伪元素实现叉号效果,完美匹配原SVG的视觉表现:

html,
body {
  height: 100%;
  margin: 0;
  padding: 0;
}

body {
  background-image: repeating-linear-gradient(135deg, rgb(0, 0, 0) 0px, rgb(0, 0, 0) 10px, transparent 10px, transparent 11px), repeating-linear-gradient(22.5deg, rgb(0, 0, 0) 0px, rgb(0, 0, 0) 10px, transparent 10px, transparent 11px), linear-gradient(90deg, rgb(0, 89, 221), rgb(0, 89, 221), rgb(0, 89, 221), rgb(0, 89, 221), rgb(0, 89, 221));
}

.exit {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 0;
  left: 0;
  width: 47.63px;
  height: 47.63px;
  cursor: pointer;
  border-radius: 50%;
  /* 还原原SVG的红色圆形背景 */
  background-color: red;
}

/* 用伪元素实现白色叉号 */
.exit::before,
.exit::after {
  content: '';
  position: absolute;
  width: 33px; /* 约为容器宽度的70%,匹配原SVG叉号比例 */
  height: 2px;
  background-color: #fff;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
}

.exit::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

效果说明

  • 完全保留原SVG的视觉效果:红色圆形背景+白色叉号,居中定位
  • 移除所有SVG依赖,纯CSS实现更轻量化
  • 可通过调整伪元素的width、height、background-color参数,自定义叉号的大小和颜色

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 22:45:38