前端如何查看音频的长度_前端Tips#3 - 简写的 border-radius 100% 和 50% 是等效的

528bda0e191b891813029e6faca4b4d6.png
本文同步自 JSCON简时空 - 技术博客,点击阅读

视频讲解

前端Tips 第 3 期 - 简写的 border-radius 100% 和 50% 是等效的_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.com
4dab5860b1fc33c7ebaa12d3a4adfd59.png

文字讲解

1、先讲结论

border-radius 这个 css 属性大家应该使用得非常娴熟,现实中用到的场景基本都是四个圆角一致的情况。

比如实现一个圆形按钮,其中 border-radius 数值有些人写为 50%,有些人则写成 100%,不过你会发现两者效果是一样的:

测试 HTML 代码如下:
<style>
  .circle-btn {
    color: white;
    width: 100px;
    height: 100px;
    text-align: center;
    line-height: 100px;
  }
</style>

<div class="circle-btn" style="
    background: #8BC34A;
    border-radius: 100%;
">50%</div>

<div class="circle-btn" style="
    background: #E91E63;
    border-radius: 100%;
">100%</div>

ab014560d968cca1cbd853f579833293.png

其实不论是 50% 还是 100%,只要将 border-radius 设置成 x%,且 x >= 50 都能获得和 50% 一样的效果。

如果不知道其中的原因,可以继续往下看。

2、原因分析

第 1 个知识点是 border-radius 的写法,最全的写法是这样的,记住这张图就行:

aa3e86751aa11c8b50f5085abd1aae1c.png
详细教程可参考《 CSS Border-Radius Can Do That?

第 2 个知识点是 border-radius 的标准,在border-radius 标准中 Overlapping Curves 章节里,有这么一段话:

dfccbeb6e80977145d72f24649e796bd.png
border-radius 有关角曲线重叠的规范

简单翻译为:角曲线不得重叠:当任意两个相邻边框半径的总和超过边框的长度时,UA(标准实现方)必须按比例减少所有边框半径的使用值,直到它们没有重叠

我们知道两个前提:

  • 每一条边最高可用长度也就 100%;
  • 每一条边最多可以设置两个圆角曲线(在边的两端)

这两端的椭圆半轴长度设置值之和存在两者情况:

  • 设置值加起来不超过 100%,那么大伙儿各自安好,互不干扰;
  • 设置值加起来如果超过 100%,那需要按比例重新划分:比如一个设置 100%,一个设置成 300%,加起来就 400% 了(超过 100% 了) —— 那么实际上一个真正分得长度的 1/4,另一个真正分得长度的 3/4;

结合 知识点 1知识点 2 就能得到文章最开始的结论了。

3、小工具 + 小练习

如果对 border-radius 的写法不太熟也没关系,有个在线工具可以帮你更好的理解。

另外,最近看到使用单个 div + border-radius 实现以下 “转动的太极图”,大伙儿可以练习一下:

b8e4f74605ddc28bce460ca370b520a7.gif

具体实现可参考以下任意一篇文章:

  • How to create a yin-yang symbol with pure CSS:使用一个 div 元素纯 CSS 实现 “阴阳” 圆形,附 源码
  • 利用CSS3的border-radius绘制太极及爱心图案示例:使用 border-radius 绘制太极和爱心
  • CSS画各种图形(五角星、吃豆人、太极图等):更多练手的 css 项目
也可以参考我所 “抄写” 的代码

4、参考文章

  • MDN border-radius: MDN 文档
  • Spec border-radius: CSS3 中 border-radius 的规范
  • CSS Border-Radius Can Do That?:强烈推荐这篇文章(附中文译文),图文并茂,还带一个可视化工具
  • Fancy-Border-Radius:这个就是上一条所指的在线 border radius 工具,所见即所得的;边动手边学习,理解会快很多
  • 秋月何时了,CSS3 border-radius知多少?:张鑫旭教程,行文幽默,讲解清晰详细
  • 了解 border-radius 的原理:用例子讲解 border-radius 的原理
  • CSS border-radius:50%和100%的区别:本文主要是讨论 50% 和 100% 的设置值一样的原因
  • border-radius:专门生成 border-radius CSS3 代码的网站,也是所见即所得

关于 “前端Tips专栏”

前端Tips”专栏,隶属于 JSCON 专栏系列,设计初衷是快速获取前端小技巧知识,取材广泛,涵盖前端编程诸多领域。设计初衷是快速消费类知识,所以每个 tips 阅读耗时大约 5 分钟。为方便读者在不同场合阅读,每篇 tips 配有视频音频文字,挑自己喜欢方便的就行。

有两种方式获取历史 tips:

① 在公众号内回 "tips" +"期号" 就可以。例如:回复 “tips25” 即可获取第25期 tips

② 前往网站:https://boycgit.github.io/fe-program-tips ,里面提供了搜索功能

欢迎大家关注我的知识专栏,更多内容等你来挖掘

「可在微信内搜索 “JSCON简时空”或 “iJSCON” 关注」

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要限制show-overflow-tooltip弹出的tips长度,你可以通过CSS样式来实现。你可以使用类名为".el-tooltip__popper"的样式选择器来定位到弹出的tip元素。然后,使用CSS的"max-width"属性来限制元素的最大宽度。示例代码如下: ```html <style lang="scss" scoped> .el-tooltip__popper { max-width: 20%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; } </style> ``` 在上面的代码中,通过给".el-tooltip__popper"添加"max-width"属性,并设置为适当的宽度,可以限制tips长度。另外,添加"overflow: hidden;"可以隐藏超出限制宽度的内容,"white-space: nowrap;"可以确保文字不换行,而"text-overflow: ellipsis;"可以让超出限制宽度的文字显示为省略号(...)表示截断。通过这些样式设置,你可以达到限制show-overflow-tooltip弹出的tips长度的效果。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [element-Ui table只显示一行超出文字隐藏为...,...:show-overflow-tooltip=“true“,并设置弹出内容的宽度。](https://blog.csdn.net/qq_43807473/article/details/123382351)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值