每日一个css效果之边框内圆角

栏目: CSS · 发布时间: 5年前

内容简介:效果如下你可能想到的方法如果采用上面的方式,会产生一个与上面效果很像的效果:内外都是圆角。下过如下

效果如下

每日一个css效果之边框内圆角

你可能想到的方法

padding: 16px;
box-shadow: 0 0 0 8px #655;
border-radius: 5px;
复制代码

如果采用上面的方式,会产生一个与上面效果很像的效果:内外都是圆角。下过如下

每日一个css效果之边框内圆角

如何将外面的那层shadow变为直角呢?

其关键就是outline和box-shadow属性:元素的圆角无法规定描边的方式

那么你可能会想到这样的实现方式

padding: 16px;
outline: 8px solid #655
border-radius: 5px;
复制代码

然后当你满怀自信去查看效果时发现,居然又不是你想要的效果,你会发现内外之间会有一小点空白。

那怎么办,是不是bug?虽然元素的圆角无法规定描边的角的样式,但可以规定box-shadow的角的样式,于是解决方式诞生了:让box-shadow与outline重合,outline将box-shadow的圆角填充成直角,box-shadow填充outline与内层之间的空白

padding: 16px;
box-shadow: 0 0 0 8px #655;
border-radius: 5px;
outline: 8px solid #655;
复制代码

这时再去刷新浏览器就会发现会是我们想要的效果了

附一个完整的例子

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>css learning</title>
  <style>
    .section {
      display: inline-block;
      width: 200px;
      background: gray;
      padding: 16px;
      box-shadow: 0 0 0 8px #655;
      border-radius: 5px;
      outline: 8px solid #655;
    }
  </style>
</head>
<body>
<div class="container">
  <span class="section">
    Suspendisse et arcu felis, ac gravida turpis. 
    Suspendisse potenti. Ut porta rhoncus ligula,
    sed fringilla felis feugiat eget.
  </span>
</div>
</body>
</html>
复制代码

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

那些让文案绝望的文案

那些让文案绝望的文案

小马宋 / 北京联合出版公司 / 2015-10 / 45

什么文案60年前就在使用互联网思维? 什么文案让一辆小车在崇尚大车的国度畅销不衰? 什么文案让做文案的人产生“既生瑜何生亮”的绝望? 没错,它是甲壳虫。 远在上世纪五六十年代,这些文案让这辆不起眼的小车畅销不衰。 它的文案风趣而又言之凿凿,它的文案机智而又无可辩驳。 它充满自黑精神,善于借势时事热点,懂得乖巧卖萌,也是天生的段子手。 为了让国内读者一睹这一......一起来看看 《那些让文案绝望的文案》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

随机密码生成器
随机密码生成器

多种字符组合密码

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具