使用一个div实现5个圆环

使用一个div实现5个圆环


面试的时候遇到了一个考察css的题,觉得挺有意思的,来记录一波:
题目:

怎么实现以下这张图片的效果?不许用图片,不许用svg。

在这里插入图片描述

我:(⊙o⊙)… 我当时的回答是可以div嵌套,emmmm…好像有点low啊,,,
面试官提示:能不能用一个div实现呢?
我:(⊙o⊙)…我只知道背景色和border可以设置颜色,那也只有两个环,,,
面试官:你可以想想盒模型中,哪些属性可以设置背景色的
我:(⊙o⊙)…border和margin
面试官:这俩可以设置颜色吗???你确定??
我:(⊙o⊙)…不能设置颜色,我再想想,,
面试官又提示:伪元素了解吗?
我:(⊙o⊙)…before和after吗?
面试官:对哦,他们是块级的还是什么?
我:块儿级的
面试官:那他们可以设置宽高吗?可以设置颜色吗?
我:(⊙o⊙)…好像可以
面试官:那你现在可以有几个环了
我:四个??
面试官:好吧,这个不纠结了,你可以再去研究一下。
我:凉。。。。。

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
可以使用 CSS 的 border-radius 属性和伪元素来将一个 div 变成圆环。具体实现方法如下: HTML 代码: ```html <div class="circle"></div> ``` CSS 代码: ```css .circle { border: 2px solid #ccc; /* 设置边框样式和颜色 */ border-radius: 50%; /* 将边框设置为圆形 */ width: 100px; /* 设置宽度 */ height: 100px; /* 设置高度 */ position: relative; /* 设置相对定位 */ } .circle::before { content: ""; /* 添加伪元素 */ display: block; /* 将伪元素设置为块级元素 */ border: 2px solid #ccc; /* 设置边框样式和颜色 */ border-top-color: transparent; /* 将上边框透明 */ border-right-color: transparent; /* 将右边框透明 */ border-radius: 50%; /* 将边框设置为圆形 */ width: 60px; /* 设置宽度 */ height: 60px; /* 设置高度 */ position: absolute; /* 设置绝对定位 */ top: 50%; /* 设置顶部偏移量为一半高度 */ left: 50%; /* 设置左侧偏移量为一半宽度 */ transform: translate(-50%, -50%) rotate(45deg); /* 将伪元素旋转45度,并向左上方平移50%的宽度和高度 */ } ``` 解释一下代码: 首先,我们将 div 的 border-radius 设置为 50%,这样就可以将它变成一个圆形。 然后,我们使用伪元素 ::before 来创建圆环的一部分。我们将它的宽度和高度设置为比 div 小,这样就可以看到 div 的边框。我们将伪元素旋转了 45 度,并向左上方平移了 50% 的宽度和高度,这样就可以让它看起来像一个圆环的一部分。 最后,我们将伪元素设置为绝对定位,使它可以相对于 div 定位,并使用 top 和 left 属性将它居中。我们还将上边框和右边框设置为透明,这样就可以隐藏掉伪元素的一部分边框。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值