background-image: radial-gradient(200px at 50px 0px, #fff 50px, #4169E1 50px);

这是做内凹圆角的核心代码,就是背景图的radial-gradient,只设置两种颜色,中间不进行过渡渐变。两种颜色叠到一起就是一条实线,看上去就是两个色块的拼接。

1.立体质感圆球

网上看到的一个很有趣的小案例——用radial-gradient制作的立体质感小圆球

就一行代码!

<span class="egg"></span>
.egg {display: block;margin-top: 30px;width: 100px;height: 100px;border-radius: 50px;background: radial-gradient(at 35px 35px, #FFF, #CCC, #FFF);background: -webkit-radial-gradient(35px 35px, #FFF, #CCC, #FFF);}

http://blog.csdn.net/playboyanta123/article/details/9303857

2.手动内凹
如下是一种用一个圆和一个方形盒子叠加做出的内凹圆角的的效果。

 <div class="something-meaningful brdradius"></div>
<div class="something-meaningful">
<div>
<a href="http://www.w3cplus.com/css3/css-secrets/inner-rounding.html"></a>
</div>
</div>
 .something-meaningful {display: inline-block;width: 55px;height: 55px;overflow: hidden;line-height: 130px;background: #655;text-align: center;/* padding: .8em; */position: relative;float: left;}
.brdradius {border-top-left-radius: 45%;}
.something-meaningful> div {width: 100px;height: 100px;background: #fff;border-radius: 5em;position: absolute;top: -46px;left: 2px;/*padding: 1em;*/}

3.我自己也来玩玩

<span class="radius"></span>
 .radius {width: 50px;height: 50px;line-height: 100px;display: block;text-align: center;background-image: radial-gradient(200px at 50px 0px, #fff 50px, #4169E1 50px);}

利用个背景色的径向渐变background-image: radial-gradient(200px at 50px 0px, #fff 50px, #4169E1 50px);,

就画出这么一个小内凹角来,想要另外方向的也可以变化。如下的一个完整案例

<ul class="uls">
<li>1
<span class="li-boradiu"></span>
</li>
<li>2
<span class="li-boradiu"></span>
</li>
<li>3</li>
</ul>
 .uls{list-style-type: none;*zoom: -1;}
.uls:after{content: "";clear: both;display: block;}
.uls li{display: block;float: left;width: 120px;height: 35px;background-color: #4169E1;text-align: center;line-height: 35px;color: white;/*做上圆角*/border-top-left-radius : 15px; border-top-right-radius : 15px; }
.li-boradiu{display: inline-block;width: 35px;height: 35px;/*background-color: #4169E1;*/background-image: radial-gradient(70px at 17.5px 0, #f00);}

参考资料:radial-gradient CSS3的蛋疼的径向渐变

 <!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<title>内凹圆角</title>
<meta name="description" content="css3,内凹圆角">
<meta name="author" content="郭菊锋702004176@qq.com"/>
<style type="text/css">
.egg {
display: block;
margin-top: 30px;
width: 100px;
height: 100px;
border-radius: 50px;
background: radial-gradient(at 35px 35px, #FFF, #CCC, #FFF);
background: -webkit-radial-gradient(35px 35px, #FFF, #CCC, #FFF);
} .something-meaningful {
display: inline-block;
width: 55px;
height: 55px;
overflow: hidden;
line-height: 130px;
background: #655;
text-align: center;
/* padding: .8em; */
position: relative;
float: left;
} .brdradius {
border-top-left-radius: 45%;
} .something-meaningful> div {
width: 100px;
height: 100px;
background: #fff;
border-radius: 5em;
position: absolute;
top: -46px;
left: 2px;
/*padding: 1em;*/
} .radius {
width: 50px;
height: 50px;
line-height: 100px;
display: block;
text-align: center;
background-image: radial-gradient(200px at 50px 0px, #fff 50px, #4169E1 50px);
}
.uls{
list-style-type: none;
*zoom: -1;
}
.uls:after{
content: "";
clear: both;
display: block;
}
.uls li{
display: block;
float: left;
width: 120px;
height: 35px;
background-color: #4169E1;
text-align: center;
line-height: 35px;
color: white;
/*做上圆角*/
border-top-left-radius : 15px;
border-top-right-radius : 15px;
}
.li-boradiu{
display: inline-block;
width: 35px;
height: 35px;
/*background-color: #4169E1;*/
background-image: radial-gradient(70px at 17.5px 0, #f00);
}
</style>
</head> <body> <h3>1.网上看到的一个很有趣的小案例——用radial-gradient制作立体质感圆球。</h3>
<!--http://blog.csdn.net/playboyanta123/article/details/9303857-->
<span class="egg"></span> <!--手动内凹!-->
<h3>2.如下是一种用一个圆和一个方形盒子叠加做出的内凹圆角的的效果。</h3>
<div class="something-meaningful brdradius"></div>
<div class="something-meaningful">
<div>
<a href="http://www.w3cplus.com/css3/css-secrets/inner-rounding.html"></a>
</div>
</div>
<h3 style="clear: both;padding-top: 10px;">3.自己也来玩玩</h3>
<span class="radius"></span>
<p>这样 利用个背景色的径向渐变background-image: radial-gradient(200px at 50px 0px, #fff 50px, #4169E1 50px);,就画出这么一个小内凹角来,想要另外方向的也可以变化。如下的一个完整案例</p>
<ul class="uls">
<li>1
<span class="li-boradiu"></span>
</li>
<li>2
<span class="li-boradiu"></span>
</li>
<li>3</li>
</ul> <a href="http://blog.csdn.net/playboyanta123/article/details/9303857">参考资料:radial-gradient CSS3的蛋疼的径向渐变</a> </body> </html>

代码实现

CSS-论css如何纯代码实现内凹圆角的更多相关文章

  1. CSS布局技巧 -- 内凹圆角

    圆角,相信每一个了解CSS属性的都知道,通过border-radius实现圆角(外凸圆角),但是如果需要实现内凹圆角怎么办呢?比如四角内凹的元素,比如如下所示这样的内凹圆角 对于这种问题,很多人的反应 ...

  2. css边框内凹圆角,解决优惠券的边框问题

    关于css边框内凹圆角,找了好久才找到的 <html <head> <title>无标题页</title> <style> body{ backg ...

  3. CSS实现多重边框和内凹圆角

    CSS实现多重边框 <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset=&q ...

  4. 纯代码实现CSS圆角

    我这里说的是纯代码,是指的不使用图片实现圆角,图片实现圆角,这里就不说了. 纯代码实现圆角主要有3种方法: 第一种:CSS3圆角   #chaomao{     border-radius:2px 2 ...

  5. Bootstrap css栅格 + 网页中插入代码+css表格

    设计达人 http://www.shejidaren.com/30-minimal-app-icons.html CSS栅格: <!DOCTYPE html> <html lang= ...

  6. [19/06/05-星期三] CSS基础_样式表的位置(内联、内部、外部样式)、块元素(div)、内联元素(span)、常用的选择器

    一.概念 CSS(Cascading Style Sheets,层叠样式表) 可以用来为网页创建样式表,通过样式表可以对网页进行装饰. 所谓层叠,就是可以将整个网页想象成是一层一层的结构,层次高的将会 ...

  7. CSS样式写在JSP代码中的几种方法

    1.行内样式. 可以直接把css代码写在现有的HTML标签元素的开始标签里面,并且css样式代码要写在style=" "双引号中才可以, 如: <p style=" ...

  8. CSS 魔法系列:纯 CSS 绘制各种图形《系列六》

    我们的网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象不到的效果.特别是随着 CSS3 的广泛使用,更多新奇的 CSS 作品涌现出来. ...

  9. CSS 魔法系列:纯 CSS 绘制各种图形《系列五》

    我们的网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象不到的效果.特别是随着 CSS3 的广泛使用,更多新奇的 CSS 作品涌现出来. ...

随机推荐

  1. mysql full text全文索引必要条件

    show variables like 'ft_m%' 'ft_max_word_len', '84''ft_min_word_len', '4' 对于英文来说, ft_min_word_len=4是 ...

  2. jquery的offset与position的区别

    这里offset取得是屏幕影藏的y轴的距离➕元素距离屏幕的y轴的距离. 而postion取得的则是,上一个父元素(包含postion定位的)的距离

  3. md5加密31位

    今天将其它服务器里的用户数据导入到新的系统数据库中 出现密码不匹配情况 查看原来数据库中密码得到结果位: 原服务器密码 明文 正确32位密闻 67b14728ad9902aecba32e22fa4f6 ...

  4. 拼图游戏(js,C#,java三种语言)

    <html> <head> <meta charset="utf-8"> <style type="text/css" ...

  5. <string> 与<string.h>、<cstring>的区别

    <string.h> <string.h>是C版本的头文件,包含比如strcpy.strcat之类的字符串处理函数. <cstring> 在C++标准化(1998年 ...

  6. android获得图片

    首先是相册图片的获取: private final String IMAGE_TYPE = "image/*"; private final int IMAGE_CODE = 0; ...

  7. Swift开发小技巧--自定义转场动画

    自定义转场动画 个人理解为重写了被弹出控制器的modal样式,根据自己的样式来显示modal出来的控制器 例:presentViewController(aVC, animated: true, co ...

  8. git 格式化输出版本信息

    git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)&l ...

  9. Linux_RPM_查询

    一.查询是否安装 rpm  -q 包名 选项:     -q  查询(query) 查询所有已安装的RPM包 rpm -qa      -a  所有(all) 二.插叙软件包的详细信息 rpm -qi ...

  10. highstock-处理时间需要处理世界时间偏移量

    highstock的数据格式采用的是[[时间,数据],[时间,数据],[时间,数据],[时间,数据]],而时间采用的是13位的毫秒值,如[1133136000000,69.66],采用的时间格式为UT ...