CSS之background-origin属性

1.作用:其实background-origin主要就是用来决定背景图片的定位原点,换句话说就是背景图片定位的起点(background-position的原点)

如果你看过了《CSS3 background-clip》一文,你不难发现,元素Background中的background-color原点位置是在Border的外边缘处,而background-image的原点是在元素的padding外边缘处(也就是在元素border的内边缘处),下面一起重新看看在《CSS3 background-clip》中所展示的background模型图

这里写图片描述

2.语法: background-origin: padding-box || border-box || content-box

取值说明:

1.padding-box(padding):此值为background-origin的默认值,决定background-position起始位置从padding的外边缘(border的内边缘)开始显示背景图片

2.border-box(border):此值决定background-position起始位置从border的外边缘开始显示背景图片

3.content-box(content):此值决定background-position起始位置从content的外边缘(padding的内边缘)开始显示背景图片

注意:background-origin虽然现代浏览器都支持,但在不同内核浏览器下还是需要带上其各自的前缀,这样在实际应用中最好按下面的语法规则书写,以保证只要支持background-origin的都能正常运行

3.实例:

先给他们创建一个Demo:

这里写图片描述

这里写图片描述

这里写图片描述

1.background-origin:padding-box

首先来看padding-box的应用,在前面的Demo基础上,给这个Demo加上background-origin:padding-box,具体如下所示

这里写图片描述

这里写图片描述

看到效果后有些人一定会问,怎么和当初效果一样,没有任何效果变化呢?细心的你要是仔细看了前面的内容,你一定不会这样问,因为padding-box是background-origin的默认值 ,也就是说background-origin:padding-box就是使background-position的起点在”left top”位置处,也是background-position的默认值。从而也就没有任何的变化

2.background-origin:border-box

这里写图片描述

这里写图片描述

现在效果明显变化了,背景图片从刚才的padding外边缘移动到了border的外边缘,其实background-position并没有改变,依旧是left top;但是background-origin把background-position的原点位置改变了,从当初的padding外边缘移动到了border的外边缘。在background-origin属性还没有出现时,做这样的效果,都是通过改变background-position的值,就拿这个例子来说吧,我们边框的20px的大小,那么需要把背景图片从边框的外边缘处开始的话,那只有改变background-position的初始值,也就是变成background-position:-20px -20px;如此一来,background-origin取值为border-box等于把background-position变成了负的边框宽度

3.background-origin:content-box

这里写图片描述

这里写图片描述

当background-origin值为content-box时,background-position的起点位置就由当初的padding外边缘移动到现在content的外边缘处了,换句话说,background-position由当初的(left top)位置变成了现在的(20px 20px),因为这个Demo的padding为20px

总结:background-clip主要是用来控制背景(背景色和背景图片)的显示区域,其主要配合background-origin来制作不同的效果;而background-origin主要是用来控制背景图片的background-position位置,并且其只能控制背景图片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/407163.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue.js CLI4 Vue.config.js标准配置 (最全注释)

前言: Vue.js CLI工具 不知不觉发展到了4.0时代,CLI给人最直白的感受是没有了build文件夹跟config文件夹,所有的配置都在Vue.config.js完成。那么该文件的配置至关重要。现在我们来看一下最新配置是怎么配置的。 有三种方式,推荐…

javascript学习系列(22):数组中的reduceRight法

最好的种树是十年前,其次是现在。歌谣 每天一个前端小知识 提醒你改好好学习了 知乎博主 csdn博主 b站博主 放弃很容易但是坚持一定很酷 我是歌谣 喜欢就一键三连咯 你得点赞是对歌谣最大的鼓励 1前言 在我们的日常开发中 不免会有很多需要处理数据的方法 本节主要说一说…

java模拟开锁

java模拟开锁 service qq:928900200 Introduction to Computer Science II: CSCI142Fall 2014Lab #1Instructor: Daniel PlanteAssigned: Monday, September 8, 2014Turn In By: Monday, September 15, 2014 (Zipped project with allfiles by MIDNIGHT)For this lab, you will…

vue中mode的设置

在学过渡效果的时候,里边有一个mode的设置,但是在路由的属性中还有一个mode。 mode的两个值 histroy:当你使用 history 模式时,URL 就像正常的 url,例如 http://localhost:8080/hi,也好看!hash:默认’has…

CSS之Background-clip属性

1.作用:CSS3中的Background-clip属性,其主要是用来确定背景的裁剪区域,换句话说,就是如何控制元素背景显示区域 2.语法:background-clip : border-box || padding-box || content-box 3.取值说明&#xf…

OLE、OCX和ActiveX控件之间的比较

一、过去的OLE和今天的OLE 最初的OLE含义是指在程序之间链接和嵌入对象数据,它提供了建立混合文档的手段(资深Windows 3.X 用户可能记得当初在Word6.0中插入一个图形的新奇和喜悦),使得那些没有太多专业知识的用户能够很容易地协调…

Vista系统自带IIS 7.0设置技巧详解

初用IIS7让人一头雾水,再也没有原来熟悉的属性窗体,替代的是一些很陌生的名词和操作方式。现在不评它这种改变是好是坏,先让它给我们跑起来吧。 首先是安装IIS7,Vista默认的情况下是没有安装IIS7,所以我们要在"控…

Spring Bean初始化过程

一、首先我们来看ClassPathXmlApplicationContext类体系结构 从该继承体系可以看出: 1. BeanFactory 是一个 bean 工厂的最基本定义,里面包含了一个 bean 工厂的几个最基本的方 法,getBean(…) 、 containsBean(…) 等 ,是一个很纯粹的…

关于height:100%和height:100vh的区别

1.em 在做手机端的时候经常会用到的做字体的尺寸单位 说白了 em就相当于“倍”,比如设置当前的div的字体大小为1.5em,则当前的div的字体大小为:当前div继承的字体大小*1.5 但是当div进行嵌套的时候,em始终是按照当前div继承的字…

顶宽的div中的英文不能自动换行

1.在一个设定好宽度的div中,当我们输入的中文文字长度超过了设定宽度时,会自动换到下一行。但是,如果输入的是英文字母,那么,无论你div设定宽度为多少,英文字母都是不换行直接在同一行输出,导致…

读取CPU信息

简单的讲下读取CPU信息的一个思路,看了后,相信谁都会说:原来这么简单呀,我也会。哈哈,进入正题,看图: 看清楚了吗,原来CPU信息在注册表里就有。如果你只是要简单的CPU信息&#xff0…

samba3.2的安装全过程(tar方式)

samba服务器,我相信大家都不陌生,主要用来实现windows和linux之间的资源共享,网上比较多的是采用rpm安装包的方式安装,我个人也觉得rpm方式安装比较方便容易,如果没什么特别需求,还是用这种吧!我这里介绍的是采用tar方式的安装.首先下载一个samba的安装文件:samba-3.2.0.tar.gz…

ThinkPHP函数详解:C方法

毫无疑问,C方法是thinkphp中操作配置项的方法,较为常用。 C方法是ThinkPHP用于设置、获取,以及保存配置参数的方法,使用频率较高。了解C方法需要首先了解下ThinkPHP的配置,因为C方法的所有操作都是围绕配置相关的。Thi…

CSS之media Query

CSS3中的Media Queries增加了更多的媒体查询,同时你可以添加不同的媒体类型的表达式用来检查媒体是否符合某些条件,如果媒体符合相应的条件,那么就会调用对应的样式表。换句简单的说,“在CSS3中我们可以设置不同类型的媒体条件&am…

全局scss封装引入背景图片路径报错

最近使用scss做了全局的mixin封装,用到背景图,意外发现通过相对路径引入图片后报错,大致意思为图片路径不对,改为了使用代替src路径引入图片依然报错,一番百度后带出解决方案通过 ~ 代替src路径进行图片引入 如下所示…

VC6编译卡死之解决办法

From: http://www.hackpig.cn/post/601.html 一直以来用的VC6都是随便下载了一下VC6SP6,据介绍说是集成了sp6的,结果多次在编译的时候被卡死,不能关闭,只能从任务管理器直接结束,感觉很麻烦,简直就是影响人…

Visual Studio 2010 中的 SharePoint 开发

Chai同学已经在他的blog上贴了文章,讲述VS2010中,针对SharePoint开发的一些增强。虽说VS2010还有一点点远,但是先了解一下也是不错的。嗯,在VS2008上,应该至少还会发布一个VSeWSS 1.4出来。 新的项目模板类型&#xf…