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. swfupload提示“错误302”的解决方法

    1.关于图片上传控件,flash控件的显示效果要好一些,本人使用swfupload 2.swfupload上传控件使用方式详见文档 http://www.leeon.me/upload/other/s ...

  2. word2vec 实践

    关于word2vec,这方面无论中英文的参考资料相当的多,英文方面既可以看官方推荐的论文,也可以看gensim作者Radim Řehůřek博士写得一些文章.而中文方面,推荐 @licstar的< ...

  3. vijos-1447 开关灯泡-大整数开方算法

    描述 一个房间里有n盏灯泡,一开始都是熄着的,有1到n个时刻,每个时刻i,我们会将i的倍数的灯泡改变状态(即原本开着的现将它熄灭,原本熄灭的现将它点亮),问最后有多少盏灯泡是亮着的. 提示 范围:40 ...

  4. 有趣的问题--12 coins problem

    问题描述: 12个金币,其中有一枚是假的,重量与众不同. 现有一架天平,需要你用最少的次数来称重,然后告诉我: (1)哪个金币是假的 (2)它到底是更轻还是更重.   (注:此处为3次)     {解 ...

  5. canvas边界与摩擦力

    处理物体超出画布时的三种基本状态,复位,移除,反弹 (1)检测是否越界的核心算法 if( object.x - object.width / 2 > right || object.x + ob ...

  6. 关于QString中的arg()函数使用方法

    例:正确做法:ui->label->setText(QString("Processingfile%1").arg(index));错误做法: ui->label ...

  7. ubuntu下nginx的启停等常用命令

    开发过程中,我们会经常的修改nginx的配置文件,每次修改配置文件都可以先测试下本次修改的配置文件是否正确,可以利用以下命令: ? 1 service nginx -t -c /alidata/ser ...

  8. 【BZOJ 2118】墨墨的等式

    http://www.lydsy.com/JudgeOnline/problem.php?id=2118 最短路就是为了找到最小的$x$满足$x=k×a_{min}+d,0≤d<a_{min}$ ...

  9. 阅读 图解HTTP ,读书笔记

    阅读它的目的只有一个:就是想了解客户端与服务端的通信是怎么实现的?    数据的存储是怎么实现的?     数据流通过程中遇到什么问题.返回什么状态.该怎么解决? 网络基础 TCP / IP 通常使用 ...

  10. AOP 注入失败的问题

    启用了AOP 后,报这样的类似错误: Error creating bean with name 'bpmpSysUserService': Injection of autowired depend ...