1、首先先在页面里加载一张图片,代码和效果如下图所示:
2、然后设置给图片起一个class名,方便一会儿的操作。
3、然后给图片设置css样式,因为方便的原因就直接在html页面写css样式了。
4、经常使用“margin: 0 auto”来实现水平居中,而一直认为“margin: auto”是不能实现垂直居中,但是实际上,仅需要添加一些限制便能实现效果,就是通过定位:
position: absolute
top: 0
left: 0
bottom: 0
right: 0
设置定位让上下左右都为0,然后通过margin:0 auto,来让元素实现上下左右都居中。
5、设置完CSS样式之后,通过浏览查看代码的效果就可以,可以看到图片已经实现了。
6、最后给大家附上全部的代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>使用CSS让图片水平垂直居中</title>
</head>
<body>
<img class="pic" src="img/timg.jpg" alt="" />
</body>
<style type="text/css">
.pic{
margin: auto
position: absolute
top: 0
left: 0
bottom: 0
right: 0
}
</style>
</html>
CSS是层叠样式表。下面,我们来看看怎么使用CSS让图片水平垂直都居中吧。
新建一张文档在桌面新建一张文本文档,改名为1.txt,如下图所示:
基础代码然后打开文本文档,编写基础代码,再把桌面上的老虎图片引入进去,如下图所示:
后缀名然后把文本文档后缀名改为.html,如下图所示:
运行网页然后在浏览器中运行网页,现在图片有了,只是还没有居中,图片居住代码要用CSS写,如下图所示:
CSS代码然后写上CSS代码,如下图所示:
垂直水平居中可以看到图片已经垂直和水平居中,如下图所示:
总代码<!DOCTYPE html>
<head>
<title>html</title>
<style type="text/css">
.picTiger{
margin: auto
position: absolute
top: 0
left: 0
bottom: 0
right: 0
}
</style>
</head>
<body>
<img class="picTiger" src="C:/Users/Administrator/Desktop/1.jpg">
</body>
<html>
页面实现大头贴功能,相框固定,照片可更换,类似下图。
其实我们可以拆分一下:相框.png是一张图片,金泰熙小姐姐照片.jpg是另一张图片,只要把相框.png叠在金泰熙小姐姐照片.jpg图片前面,那么就实现啦!
先上HTML结构:
相框为固定宽高,假设宽为300px,高为400px。
CSS样式如下:
那么问题来了,photo怎么居中?
试过的不成功解法:
1、把photo设为绝对定位,left:-50%,再设margin-left为负值。由于photo宽度不确定,因此margin-left具体值不确定。
2、宽度设为300px,图片变形。
3、把photo设为绝对定位,margin:auto,left:0,right:0。当box容器宽度小于photo时,该方法失效。
以上方法均无法实现居中后,想到如下可行办法:
HTML结构:
CSS样式:
给photo外加一个div容器photobox,给photobox设定一个足够宽的宽度,再将photobox相对box居中,然后再用text-align:center让photo相对于photobox居中。
photobox容器left值=(photobox容器宽 - box容器宽)/2