首页 > web前端 > css教程 > 正文

css利用position定位实现img图片居中的3种方法(代码实例)

青灯夜游
发布: 2018-10-19 12:01:41
原创
10706 人浏览过

css怎么让img图片居中显示?在之前的文章【css如何让img图片居中?css的display属性实现图片居中】中我们介绍了display属性实现图片居中的两种方法,本篇文章我们给大家带来css利用position定位实现img图片居中的3种方法(代码实例)。有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

1、css position定位设置img图片居中,知道img图片的宽、高

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>img图片居中</title>
		<style>
			*{margin: 0;padding:0;}
			.demo{
				width: 400px;
		        height: 300px;
		        margin: 50px auto;
		        border: 1px dashed #000;
		        position: relative;
			}
			.demo img{
				width: 200px;
				height: 150px;
				position: absolute;
		        top: 50%;
		        left: 50%;
		        margin-top: -75px; /* 高度的一半 */
		        margin-left: -100px; /* 宽度的一半 */
			}
		</style>
	</head>
	<body>
		<div class="demo">
			<img src="1.jpg" />
		</div>
	</body>
</html>
登录后复制

效果图:

1.jpg

说明:

将demo盒子设置成相对定位relative,将img设置成绝对定位absolute,left:50%,top:50%,此时图片的左上角位于div的中心。

2.jpg

想要图片居中,图片的中心和demo盒子的中心要重合,因此就需要将图片向上移动图片高度的一半,并向左移动图片宽度的一半。

margin-top: -75px; /* 高度的一半 */
margin-left: -100px; /* 宽度的一半 */
登录后复制

3.jpg

2、css position定位设置img图片居中,不知道img图片的宽、高

1)、css position定位+transform实现图片居中

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>img图片居中</title>
		<style>
			*{margin: 0;padding:0;}
			.demo{
				width: 400px;
		        height: 300px;
		        margin: 50px auto;
		        border: 1px dashed #000;
		        position: relative;
			}
			.demo img{
				width: 200px;
				height: 150px;
				position: absolute;
		        top: 50%;
		        left: 50%;
		        transform: translate(-50%,-50%);
			}
		</style>
	</head>
	<body>
		<div class="demo">
			<img src="1.jpg" />
		</div>
	</body>
</html>
登录后复制

效果图:

1.jpg

说明:

设置left:50%,top:50%,让图片的左上角位于demo盒子的中心;此时只要图片中心和demo盒子中心重合就可以实现图片居中了。(具体看方法一)

那么如何让图片中心和demo盒子中心重合?我们需要将图片向上移动图片高度的一半,并向左移动图片宽度的一半。但又不知道图片的宽高值,这要怎么办?这个时候我们使用transform: translate(-50%,-50%);就可以实现想要的效果。

2)、css position定位+margin实现图片居中

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>img图片居中</title>
		<style>
			*{margin: 0;padding:0;}
			.demo{
				width: 400px;
		        height: 300px;
		        margin: 50px auto;
		        border: 1px dashed #000;
		        position: relative;
			}
			.demo img{
				width: 200px;
				height: 150px;
				position: absolute;
		        top: 0;
		        left: 0;
		        right: 0;
		        bottom: 0;
		        margin: auto;
			}
		</style>
	</head>
	<body>
		<div class="demo">
			<img src="1.jpg" />
		</div>
	</body>
</html>
登录后复制

效果图:

1.jpg

说明:

将demo盒子设置成相对定位relative,将img设置成绝对定位absolute、top: 0、 left: 0、 right: 0、 bottom: 0,此时图片的左上角与demo盒子左上角重合:

5.jpg

在使用margin: auto;让img图片相对于demo盒子进行水平和垂直方向的居中对齐,就可以实现图片居中效果。

总结:以上就是css position定位实现img图片居中3种方法的全部介绍,希望能对大家的学习有所帮助。更多相关教程请访问 CSS3视频教程Html5视频教程bootstrap视频教程

以上是css利用position定位实现img图片居中的3种方法(代码实例)的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板