css3新增了一些背景相关的属性,其中background-origin与background-clip是比较让人困惑的:

background-origin:用于指定绘制背景图片的起点。默认值:padding-box。
background-clip:用于指定背景图片的显示范围。默认值:border-box。

它们的都有这三个属性值:border-box padding-box content-box

那么区别在哪里呢?

先来看一个简单的小例子:

.box {
width: 199px;
height: 100px;
background-color: rgba(0,0,0,1);
border: 40px solid rgba(255,0,0,0.6);
padding: 40px;
float: left;
margin-right: 20px;
margin-bottom: 20px;
}

发现了没有,此时的边框颜色有点偏暗,它受了黑色背景的影响。为什么背景颜色是从边框开始的呢,
这里就要提到background-clip属性,它的默认值就是border-box。

如果我们修改background-clip的值分别为padding-box与content-box:

相信上面的例子已经让你对clip有了了解,如果你用过photoshop的剪切蒙版,那么一定会觉得这个单词很形象~~~

background-image的情况类似:(默认background-repeat:repeat)


               (1)                                     (2)                                      (3)
但当background-repeat为no-repeat时,你发现第一张图的background是从左上角的padding开始,
一直到又下角的border。这可能在你意料之外。


             (4)                                    (5)                                       (6)

观察上面这6张图,你还发现了什么?对,它们背景图片的起始位置都是在左上角的padding。
这就是因为background-origin的默认值为padding-box的缘故了。下面我们就来看看这个属性。

这里都是默认了背景重复,至于不重复的情况,这里不再赘述。这9张图,很明显得告诉了我们background-origin的作用。它用来设置容器的背景图片从容器的哪里作为起始位置,至于显示不显示的问题,那就是background-clip的事了。

我们也可以控制背景图片不从0 0左上角开始显示,修改background-positon的位置即可。

如图:我们设置background-position:bottom right;

当设置background-position:center时,background-origin三个值的效果相同:


最后需要注意的一点是,当设置了background-attachment:fixed,background-origin无效。

现在,你应该已经发现,background-clip与background-origin其实是两个完全不同的属性。

最新文章

  1. [原创]Linux-day1
  2. 初学Python之谈
  3. MyBatis缓存禁用失败
  4. inheritableStatics 与statics类
  5. Tip和菜单的实现方式
  6. bnuoj 44359 快来买肉松饼
  7. 10+ commonly using find command switches with example Unix/Linux
  8. Android 微信SDK分享功能中的最全过程步骤分析
  9. Tr A
  10. Windows命令行(DOS命令)教程-8 (转载)http://arch.pconline.com.cn//pcedu/rookie/basic/10111/15325_7.html
  11. 酷炫的方块状散点3D
  12. 基于oracle的sql优化
  13. html 自定义标签使用实现方法
  14. TNS-12560: TNS: 协议适配器错误同时伴有TNS-00584: 有效节点检查配置错误的解决方法
  15. undo丢失恢复异常恢复,运维DBA反映Oracle数据库无法启动报错ORA-01157 ORA-01110,分析原因为Oracle数据库坏块导致
  16. Laravel 更新数据时在表单请求验证中排除自己,检查指定字段唯一性
  17. 安装时提示 INSTALL_PARSE_FAILED_MANIFEST_MALFORMED 解决办法
  18. Android签名
  19. 16.Mysql SQL Mode
  20. ElasticSearch的安装、使用、踩坑

热门文章

  1. bash shell中的特殊用法
  2. HDU2295 Radar —— Dancing Links 可重复覆盖
  3. HDU1241 Oil Deposits —— DFS求连通块
  4. 织梦DEDE多选项筛选_联动筛选功能的实现_二次开发
  5. UVA-10125(中途相遇法)
  6. NSString -- UILabel中字体有多种颜色,字符串自动计算高度/换行
  7. 「LuoguP1799」 数列_NOI导刊2010提高(06)
  8. 棋盘问题(dp)
  9. 架构:MVC
  10. springmvc不进入Controller导致404