我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何解决border-radius值设置的问题

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何解决border-radius值设置的问题

这篇文章将为大家详细讲解有关如何解决border-radius值设置的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

问题记录

今天本打算要完成一个类似于进度条的小组件, 原型是这样的(这里长200px, 高28px)

如何解决border-radius值设置的问题

我一看, 很简单嘛, 抛开那个数字1样式不谈, 整体父级样式就是一个左边半圆形, 右边带有弧度的div啊。
这个用css的border-radius就可以搞定了啊。 左边是圆角, 圆角50px啊, 右边是小圆角, 以往的div都是8px弧度的。 根据border-radius中角的顺序(以顺时针的方向解析,上左,上右,下右,下左), 设置border-radius: 50px 8px 8px 50px;就好了啊。 满心欢喜写好样式, 打开浏览器。

傻了, 不对啊, 我原以为是这样的

如何解决border-radius值设置的问题

实际上, 浏览器中是这样的

如何解决border-radius值设置的问题

不对了啊, 右边的角度设置了啊, 怎么看起来跟没设置一样呢, 我把8改成了10px在试了下, 还是差不多跟没设置一样的。

8px按理说应该有明显的弧度了啊, 全设置成8px看看呢

如何解决border-radius值设置的问题

对啊, 这是8px应该有的弧度, 为什么改成左边写成50px就变样了呢, 难道跟50px有关?带着疑问, 我看了看百度。

百度说, 其实border-radius的完整写法(w3c)是 

border-radius: 1-4 length|% / 1-4 length|%;

平时我们写的border-radius : 50px,其实完整的写法应该是:

border-radius : 50px 50px 50px 50px / 50px 50px 50px 50px;

“/”前的四个数值表示圆角的水平半径,后面四个值表示圆角的垂直半径

每个顺序一一对应 (水平半径:左上 右上 右下 左下)/(垂直半径:左上 右上 右下 左下),

什么是水平半径和垂直半径呢?

如何解决border-radius值设置的问题

根据水平半径跟垂直半径的比值, 可以调整角的弧度, 两者半径相同, 就是个圆角。 这就是问什么我平时设置的角都是圆角的原因, 因为我没有写完整过

例如 border-radius:10px 20px 30px 40px/40px 30px 20px 10px

就是这样的样子

如何解决border-radius值设置的问题

再来回头看我们之前的问题

我们忽略了高度28px了啊. 这样算来, 我们要设置右边是个半圆形, 只要水平跟垂直半径都是14px不就好了吗

border-radius: 14px 8px 8px 14px / 14px 8px 8px 14px;

如何解决border-radius值设置的问题

这样,父级样式不就对了吗。

之前右边设置的8px圆角看起来没有效果, 可能跟50px比起来, 被等比例压缩了吧, 因为左边本来就高28px, 塞了个半径50px进去, 我算算(14 * 8 / 50 = 2.24), 就等于设置成了

border-radius: 14px 2.24px 2.24px 14px / 14px 2.24px 2.24px 14px;

关于“如何解决border-radius值设置的问题”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何解决border-radius值设置的问题

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何使用CSS的border-radius属性设置圆弧

小编给大家分享一下如何使用CSS的border-radius属性设置圆弧,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!方法:使用css的border-radius
2023-06-08

如何解决@CachePut设置的key值无法与@CacheValue的值匹配问题

这篇文章主要介绍如何解决@CachePut设置的key值无法与@CacheValue的值匹配问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!@CachePut设置的key值无法与@CacheValue的值匹配缓存注
2023-06-22

mysql设置默认值无效问题及解决

目录场景原因解决总结场景数据库mysql框架hibernate原因根据hibernate打印出的sql信息可以发现,如果实体类字段为null,则仍会insert这个字段为null,而mysql设置的默认值生效的前提是,当我们inse
2023-10-19

如何解决python缺失值的问题

这篇文章主要介绍如何解决python缺失值的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1、解决方法(1)忽视元组。缺少类别标签时,通常这样做(假设挖掘任务与分类有关),除非元组有多个属性缺失值,否则该方法不太
2023-06-15

win7网络连接设置问题如何解决

这篇“win7网络连接设置问题如何解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“win7网络连接设置问题如何解决”文章吧
2023-07-01

如何解决设置代理ip不能上网的问题

本篇内容主要讲解“如何解决设置代理ip不能上网的问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何解决设置代理ip不能上网的问题”吧!伴随着网络的普及,人们对代理IP已不再陌生,在日常生活和
2023-06-20

如何解决win10任务栏设置打不开的问题

在使用Windows 10的过程中,有时候用户会遇到任务栏设置打不开、点击无响应的情况,这时候应该如何解决呢?可参考以下2种方法.具体方法如下:方法一:重启“windows资源管理器”直接按键组合键“ctrl+shift+esc"打开”任务
2023-07-18

如何解决php curl 没有返回值的问题

php curl没有返回值的解决办法:1、打开相应的PHP代码文件;2、通过“curl_setopt($ch,CURLOPT_URL,$get_token_url);curl_setopt();...”代码解决即可。
2015-01-22

如何决定VS2005配置的设置问题和方式

小编给大家分享一下如何决定VS2005配置的设置问题和方式,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!例如:DateTime userDateTime1 = P
2023-06-17

如何解决win10系统设置搜索不到问题

这篇文章主要介绍了如何解决win10系统设置搜索不到问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、点击任务栏中的小娜按钮,在弹出的搜索框中输入:控制面板 点击打开控制
2023-06-28

编程热搜

目录