使用 CSS 制作圆角边框可能是网页前端设计师们最头痛的问题之一. 圆角边框看似简单, 但实现起来却很不简单, 可能需要复杂的页面结构或大量的边角图片, 方法很多, 但无论哪一种都是难以维护的.

CSS 很直观, 但显然不够灵活, 导致页面设计中出现大量冗余代码. 不能使用变量和循环, 若想清除某个类型所有属性的值还需要一句一句的清除, 而不是一句完成. 而最令人痛心的莫过于现实圆角边框, 或许以下的代码是我们梦寐以求的:

CSS Code复制内容到剪贴板

.roundbox { round:3px; }/* 圆角大小为三像素 */

奈何事与愿违, W3C 里面没有这样的东西. 某些浏览器支持一些特殊的属性可以实现类似功能, 但那并不能得到其他浏览器的支持. WordPress 后台就使用了这样的属性, Firefox 等一些浏览器上显示非常好看, 但 IE 上却惨不忍睹.

为了实现小圆角, 各网站是各出奇招, 什么方法都有. 而我比较喜欢百度知道的实现办法, 因为零图片, 并且易于控制, 因为圆角部分是在 box 外部, 随时可以无害删除.

百度知道的方法借用了 div 在 float:none 时占用全行的特性, 在 box 上方和下方各都放置几个 div, 并对这些 div 设置背景色, 边框和外边距. 也就是说, 我们只要固定了外层的宽度, 其他的就不需要操心了. 我模仿百度知道的样式做了一个例子, 效果可以参考一下右边的截图. 实现代码如下:

CSS Code复制内容到剪贴板

Cascading Style Sheets

Cascading Style Sheets (CSS) is a simple mechanism for adding style (e.g. fonts, colors, spacing) to Web documents. Tutorials, books, mailing lists for users, etc.

其中有一点是很重要的, 记得为上下圆角所在的行添加 overflow:hidden 属性, 否则在 IE 中将会相当的恶心.

圆角是实现了, 但并不是完美无瑕的, 边角有锯齿 (下面会介绍小圆角具体的方法可以消灭锯齿, 只要你不嫌麻烦). 为什么不能使用过渡颜色呢? 因为圆角所在的行只能控制背景和边框两处的颜色, 所以不能在同一行搞出比较复杂的颜色过渡. 因为颜色被限制了, 所以圆角的大小也被限制了 (有锯齿的圆角太大会显得很难看), 如果你的 box 有边线, 圆角大小建议不要超过 4 个像素, 如果没边线, 也不要超过 6 个像素. 有更大的圆角需要最好还是采用图片, 处理简单又方便.

访问过腾讯问问的朋友可能会发现, 它的样式是抄袭百度知道的. 但你知道吗? 其实它的圆角效果是使用图片实现的. 有兴趣的朋友可以去研究一下.

纯代码实现的小圆角

以下是我个人的一点建议, 希望对你有帮助.

什么时候使用纯代码制作圆角边框?

你驱使代码的能力胜于图形.

你追求更快的网页显示速度, 就算是微乎其微的差别.

在模板或主题中使用.

什么时候使用图片制作圆角边框?

你驱使图形的能力胜于代码.

你不在乎所差不几的网页显示速度, 更注重直观和维护方便.

在文章或其它动态内容中使用.

其实也很简单, 下面分析一下, 或许以后会有用.

1. 做一个直角的 DIV, 给他画上边框. (以下图片都以左上角为例)

2. 在 DIV 内部画第二个 DIV, 背景色与页面背景颜色相同.

3. 将第二个 DIV 挪到边界上, 使它能与页面背景连接, 这样看上去就像一个缺角的框框.

4. 在第二个 DIV 内画第三个 DIV, 在这里其实就是一点.

5. 将第三个 DIV 挪到右下角的位置, Done.

主要步骤讲解了以后来看一个完整的例子:

CSS Code复制内容到剪贴板

html PUBLIC"-//W3C//DTD XHTML 1.1//EN""http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

纯 CSS 打造圆角

Hello, World!

最终效果如下图所示:

html圆角边框怎么做,CSS圆角边框制作指南与实例相关推荐

  1. php表格所有边框实线,css表格怎么添加边框样式?css表格边框样式总结(附完整实例)...

    本篇文章主要讲述的就是关于css表格添加边框样式,这里还有关于css表格边框样式的总结,还有css表格边框的完整实例.接下来就让我们一起来看这篇文章吧 首先我们先看看如何利用css来给表格添加边框: ...

  2. html5边框有圆弧,CSS圆角有立体感的DIV边框

    圆角边框 #sash_left { width:430px; float:left; } #sash_left ul { text-align:left; vertical-align:middle; ...

  3. html 边框立体效果,CSS圆角有立体感的DIV边框

    圆角边框 #sash_left { width:430px; float:left; } #sash_left ul { text-align:left; vertical-align:middle; ...

  4. DIV+CSS圆角边框

    简洁型css圆角: 方法1: 简洁型css圆角矩形 code1: <style type="text/css"> .b1,.b2,.b3,.b4,.b1b,.b2b,. ...

  5. div盒子边框圆角_div+css用边框实现圆角矩形(多样式)

    简洁型css圆角: 方法1: 简洁型css圆角矩形 code1: 复制代码代码如下: .b1,.b2,.b3,.b4,.b1b,.b2b,.b3b,.b4b,.b{}{display:block;ov ...

  6. css用边框实现圆角矩形

    今天要做一个圆角矩形的按钮,于是直接找圆角矩形的css实现方式,搞了半天,虽然也实现效果了,但是很复杂,需要用很多代码,后来突然想到以前做过的一个边框效果,也是圆角矩形,于是找了出来,发现这种办法相当 ...

  7. css圆角框四周阴影,css3圆角边框,边框阴影

    border-radius向元素添加圆角边框,css3中的.IE9+ chrome safari5+ firefox4+ 现在都支持.可以向input div等设置边框.与border相似,可以四个角 ...

  8. html圆角边框只有左边,border-radius以外的CSS圆角边框制作方法

    CSS3的border-radius利用DIV+CSS生成圆角边框,在很多情况下都会用到,目前DIV+CSS的圆角边框,一种是利用CSS3,一种是利用布局模拟出圆角. 先说第一种,利用CSS3,前提是 ...

  9. CSS圆角边框、盒子阴影、文字阴影(01-07课)

    01.综合案例-快报模块布局分析 1.大盒子div 2.分2个小盒子(上盒子为标题h,下盒子为列表(无序列表)) 02.03.04.综合案例-快报制作 1.头部制作 2.快报模块列表制作 代码: &l ...

最新文章

  1. 卡顿严重_魔兽怀旧服:安其拉开门二测结果出炉,暴雪依然无法解决卡顿问题...
  2. 绘制clothoid曲线
  3. 爷青回!16年前“打球AI”意外走红,程序员留下了自己的ICQ和MSN
  4. 把别人的Tcl/Tk代码加入到Go语言里12 游戏5 画图案?
  5. Oracle的in查询
  6. 真假应用傻傻分不清,HideIcon病毒玩起“隐身计”
  7. python多线程异步爬虫-Python异步爬虫试验[Celery,gevent,requests]
  8. arts-week12
  9. can卡、usbcan、can分析仪通用测试软件LCANTest详细介绍
  10. .net之PDF合并(直接拼接,不改变尺寸和样式)
  11. McAfee Endpoint Security 10.6卸载
  12. 程序员面试必备的八大数据结构
  13. 【解决方案】windows系统部分软件变日文
  14. yyds、yygq、xswl...都是什么意思?
  15. 2019CSP-J组题目-加工零件
  16. 【web安全】——floor报错注入
  17. 渗压计工作原理及选型
  18. 安卓Tablayout自定义文字、指示器长度和颜色
  19. commonjs 与 esm 的区别
  20. 十一月的Kemin,不是萧邦 2005

热门文章

  1. MySQL数据库之GROUP BY用法
  2. 兔子繁殖问题。假设有一对小兔子,一个月后成长为一对大兔子,从 第二个月开始,每对大兔子生一对小兔子。不考虑兔子的死亡,求第n个月的兔子总对数
  3. java编程兔子问题_JAVA编程题-用java解决兔子问题
  4. 新建gitlab分支
  5. JSON 格式化和校验工具
  6. ik与拼音分词器,拓展热词/停止词库
  7. 熊孩子乱敲键盘攻破linux桌面,“熊孩子”乱敲键盘攻破了Linux桌面,怎么做到的?...
  8. 我是如何诱骗你的-高级钓鱼技术
  9. VIM:消除~ 和 .un~后缀的备份文件
  10. Rootkit 真刀真枪的权限保卫战