css使图片居中的方法有哪些
时间:2021-08-09 来源:互联网
今天PHP爱好者给大家带来CSS图片居中的方法:1、利用“text-align: center;”样式;2、利用“margin: 0 auto;”样式;3、利用弹性盒布局;4、利用栅格布局;5、利用绝对定位中对齐;6、利用background属性,实现背景图片居中。希望对大家有所帮助。
本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。
html
<p id="pic">
<img src=star.jpg class="logo">
</p>
一、(最简单)文本属性对齐text-align
text-align控制元素中文本行的对齐方式。可以在img设一个父辈的p,这样img就可以是p的文本,然后用text-align修改p属性。(在父辈元素添加属性)
注意:子元素必须是inline或inline-block;如果子元素也是p的话,需要给子元素设置display:inline/inline-block. 这里子元素img是inline所以省略这一步。该方法适用于inline元素上。比如img的居中
css
#pic {
text-align: center; /*表示p的子元素居中*/
}
二、巧用margin
css
img {
display: block;
width: 100px;
margin: 0 auto;
}
以上三点缺一不可。
margin: 0 auto;居中的前提是:
内行元素必须要设置成display: block; img是行内元素必须得设置。如果是input可以不设置。
元素必须要有宽度;自带宽度的除外,比如button和input等。
根据前提,还可以有另一种方法-修改父元素属性
#pic {
width: 100px;
margin: 0 auto;
} /*父元素p属于block,所以不用再设 display: block;*/
综上所属,该方法适用于block元素上。比如p、input的居中
margin的局限:一行显示两个图片时,margin需要相应修改。
三、弹性盒布局
css
#pic {
display: flex;
justify-content: center;
}
弹性盒布局可以使用少数几行css实现几乎所有的布局。而且最神的是,即便是n个图片上面两行都可以实现居中,而不必考虑图片布局和位置。
四、栅格布局
弹性盒用在导航栏是最普遍的。与之相比,栅格布局是普适的布局系统。
#pic {
display: grid;
align-items: center; /*块级方向(纵向)上的全部栅格元素居中对齐*/
justify-items: center; /*行内方向(横向)所有的元素中线对齐*/
}
所以能够非常方便的处理多张图片对齐的问题。
五、绝对定位中对齐
css
#pic {
position: relative; /*设置绝对定位元素(img)的容纳块,如果不设置,那么容纳块默认为body*/
}
.logo {
position: absolute;
right: 1em; left: 1em; //表示左右距离相等
margin: 0 auto; //与方法二相似
}
与方法二最大的区别是,margin的用法是针对block元素的。如果用position就不需要设置block 了。但是position一般用在框架布局上,如果只是图片居中有点大材小用,比较麻烦。不建议。
六、背景图片居中
html
<p></p>
css
p {
height: 1000px; /*高度非常重要*/
background: url(star.jpg) no-repeat top center;
}
前提:只要元素内容是空的,就必须设置高度。因为p内容是空的,所以必须要设置高度,否则p是没有空间的,那背景图片自然也不会显示。如果是body就不用,因为body自带高度。
设置为背景图片的局限性是无法设置超链接、title、alt等图片的属性。如果不是背景图片,尽量不要用这种格式。
以上就是css使图片居中的方法有哪些的详细内容,更多请关注php爱好者其它相关文章!
-
尘白禁区初诞的沃坦打法攻略 2024-11-26
-
人脸检测api接口热知识尽在聚合数据 2024-11-26
-
永劫无间手游猛蓄猛使用方法 2024-11-26
-
异环PC测试资格获取方法 2024-11-26
-
聚合数据带你了解人脸对比api接口详情 2024-11-26
-
剑灵2暴戾鱼王打法攻略 2024-11-26