CSS中background-position详述
background-position : length || length
background-position : position || position
取值:
length : 百分数 | 由浮点数字和单位标识符组成的长度值。请参阅 长度单位
position : top | center | bottom | left | center | right
说明:
设置或检索对象的背景图像位置。必须先指定 background-image 属性。
该属性定位不受对象的补丁属性( padding )设置影响。
默认值为: 0% 0% 。此时背景图片将被定位于对象不包括补丁( padding )的内容区域的左上角。
如果只指定了一个值,该值将用于横坐标。纵坐标将默认为 50% 。如果指定了两个值,第二个值将用于纵坐标。
如果设置值为 right center ,因为 right 作为横坐标值将会覆盖 center 值,所以背景图片将被居右定位。
对应的脚本特性为 backgroundPosition。
注: 本文中使用的图片大小为 300px*120px,为了能很清晰的表达图形的哪部分被隐藏了,按照图片的大小平均分成了9等份。同时背景图片容器区域绘制出绿色边框清晰显示容器的范围。
1、background-position:0 0;
背景图片的左上角将与容器元素的左上角对齐。该设置与background-position:left top;或者background-position:0% 0%;设置的效果是一致的。例如:
.container{
width:300px;
height:150px;
background:transparent url(bg.jpg) no-repeat scroll 0 0;
border:5px solid green;
}
效果如下图1:
图 1
2、该属性定位不受对象的补丁属性( padding )设置影响。
例如,我们给容器元素增加padding值,背景图片的左上角还是与容器元素的左上角对齐。在此处只是影响到了容器元素的高度和宽度。
.container{
width:300px;
height:150px;
background:transparent url(bg.jpg) no-repeat scroll 0 0;
border:5px solid green;
padding:50px;
}
效果如图2:
图 2
3、background-position:-70px -40px;
图片以容器左上角为参考向左偏移70px,向上偏移 40px,示例:
.container{
width:300px;
height:150px;
background:transparent url(bg.jpg) no-repeat scroll -70px -40px;
border:5px solid green;
}
效果如图3:
图 3
4、background-position:70px 40px;
图片以容器左上角为参考向右偏移70px,向下偏移 40px,示例:
.container{
width:300px;
height:150px;
background:transparent url(bg.jpg) no-repeat scroll 70px 40px;
border:5px solid green;
}
效果如图4:
图 4
5、background-position:50% 50%;
图片水平和垂直居中。与 background-position:center center;效果等同。
等同于x:{容器(container)的宽度—背景图片的宽度}*x百分比,超出的部分隐藏。
等同于y:{容器(container)的高度—背景图片的高度}*y百分比,超出的部分隐藏。
例如: .container{
width:300px;
height:150px;
background:transparent url(bg.jpg) no-repeat scroll 50% 50%;
border:5px solid green;
}
其x=(300-210)*50%=45px;
y=(150-120)*50%=15px;
效果如图5:
图 5
由于超出部分别往两端延伸,所以我们可以先制作一张宽度足够宽图片设置水平值为50%,这样可以用来适应不同的浏览器,使得图片水平充满浏览器窗口并且居中。替代margin:50 auto的功能。
6、background-position:-50% -50%;
等同于x:-{容器(container)的宽度—背景图片的宽度}*x百分比,超出的部分隐藏。
等同于y:-{容器(container)的高度—背景图片的高度}*y百分比,超出的部分隐藏。
.container{
width:300px;
height:150px;
background:transparent url(bg.jpg) no-repeat scroll -50% -50%;
border:5px solid green;
}
效果如图6:
图 6
7、background-position:100% 100%;
图片处于容器元素的右下角,与 background-position:right bottom;效果等同。
示例:
.container{
width:300px;
height:150px;
background:transparent url(bg.jpg) no-repeat scroll 100% 100%;
border:5px solid green;
}
效果如图7:
CSS中background-position详述相关推荐
- 【CSS】【position】css中的position属性
css中的position属性用于设置元素位置的确定方式,它有以下几种取值: static:默认定位方式,子元素在父容器中挨个摆放 absolute:绝对定位,元素不占据父容器空间,相当于文档body ...
- css中对position的几种定位方式的最佳诠释
关于元素的position定位的理解,牛客网的hardy给出了一个比较好的理解: 在html中网页可以看成一个立体的空间,一个完整的页面是由很多个页面堆积形成的,如上图所示 CSS中Position属 ...
- CSS中background与background-image的区别
CSS中background与background-image的区别 1.如果只是设置两张背景图不涉及CSS样式那么两者都可以使用 2.如果设置样式那就只能用background,如 以下是不适用ba ...
- css中的position定位详解
css中的position定位详解 position属性指定了元素的定位类型. position属性的5个值:static,relative,fixed,absolute,sticky; 元素可以使用 ...
- CSS中,position的绝对定位和相对定位的区别
CSS中,position的绝对定位和相对定位的区别 1.position的四个值:static.relative.absolute.fixed 绝对定位:absolute和fixed统称为绝对定位 ...
- CSS中的position:relative理解
今晚来说说CSS中的position属性,其实在实际开发页面过程中,记录一下这个让我迷茫的relative,我将它分为三种情况进行说明 包含关系:父级absolute,子级relative: 包含关系 ...
- CSS中的Position、Float属性的一些深入探讨
为什么80%的码农都做不了架构师?>>> HTML布局的基本要点: 如果要掌握.运用好Position.Float属性必须要对HTML的两个基本点有清晰的了解. 盒子模型(bo ...
- CSS中 定位position 和 transform 移动元素的比较
主要解决问题: 在使用 transform: translate(50%,50%); 平移元素后,再用 offsetLeft 和offsetTop 获取该元素距离 body 左侧距离时,无法获取经 t ...
- CSS中的position定位属性
一.文档流 在分析position定位之前可以先简单了解下CSS中的脱离文档流是什么意思. 文档流:可以理解为元素的一种状态,处于这种状态下的元素具有一些特性. (更加详细的文档流讲解可到<关于 ...
- CSS中的position定位
CSS中position的定位主要分为静态定位,相对定位,绝对定位和固定定位,属性值分别为:static,relative,absolute,fixed:元素的位置通过 "left" ...
最新文章
- CentOS VMware 配置IP小结 静态 配置 桥接 NAT
- 洛谷P1908求逆序对【树状数组】
- 2020-11-11(aidl)
- python 打包发布网站_Python代码的打包与发布
- 自增或自减例子:i++和++i的相同点和不同点
- OpenCV中文路径问题、matplotlib可视化中文乱码问题的解决办法
- (STL,set,priority_queue)丑数
- android camera 动画,Android 使用Camera创建3D动画
- C++自动类型转化--特殊构造函数方法和重载的运算符方法
- vuedraggable嵌套块拖拽_vuedraggable 拖拽 应用 不同列表之间的拖拽
- 受宠的背后:安全市场面临重新洗牌
- linux禁用别人ping自己,linux /etc/sysctl.conf 禁止别人ping自己
- 西门子 S7-200和S7-300/400 通过模块连接INTOUCH通讯方法
- SolidWorks迈迪轴生成器使用注意事项
- 剪贴板是计算机系统,Windows7电脑剪切板在哪?
- 怎样查看PPT中的字数
- Guava--Joiner使用方式以及java8实现Joiner
- 一个能够让你快速从html结构生成css结构的vscode插件
- LAYUI 表格 嵌套JSON不能显示的解决方法
- 【Matlab】极点配置控制(PPC)
热门文章
- 比较String、StringBuffer和StringBuilder
- boost::sort模块实现整数排序测试
- boost::mp11::mp_plus相关用法的测试程序
- boost::geometry模块Linestring相关的测试程序
- GDCM:读取UTF8 QtDir的测试程序
- boost的chrono模块运行时解析的测试程序
- ITK:使用二项式内核模糊图像
- ITK:表面提取之前平滑二值图像
- VTK:可视化算法之BandedPolyDataContourFilter
- VTK:Utilities之MassProperties