css如何使图片居中

发布时间:2021-07-28 09:40:39 作者:小新
来源:亿速云 阅读:814

这篇文章主要介绍了css如何使图片居中,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

CSS图片居中的方法:1、利用“text-align: center;”样式;2、利用“margin: 0 auto;”样式;3、利用弹性盒布局;4、利用栅格布局;5、利用绝对定位中对齐;6、利用background属性,实现背景图片居中。

本教程操作环境:windows7系统、CSS3&&HTML5版、Dell G3电脑。

html

 <div id="pic">
        <img src=star.jpg class="logo">
 </div>

一、(最简单)文本属性对齐text-align

text-align控制元素中文本行的对齐方式。可以在img设一个父辈的div,这样img就可以是div的文本,然后用text-align修改div属性。(在父辈元素添加属性)

注意:子元素必须是inline或inline-block;如果子元素也是div的话,需要给子元素设置display:inline/inline-block. 这里子元素img是inline所以省略这一步。该方法适用于inline元素上。比如img的居中

css

#pic {
    text-align: center;   /*表示div的子元素居中*/
}

二、巧用margin

css

img {
    display: block;    
    width: 100px;
    margin: 0 auto;
}

以上三点缺一不可。

margin: 0 auto;居中的前提是:

根据前提,还可以有另一种方法-修改父元素属性

#pic {
    width: 100px;
    margin: 0 auto;
}    /*父元素div属于block,所以不用再设 display: block;*/

综上所属,该方法适用于block元素上。比如div、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

<div></div>

css

div {
    height: 1000px;  /*高度非常重要*/
    background: url(star.jpg) no-repeat top center; 
}

前提:只要元素内容是空的,就必须设置高度。因为div内容是空的,所以必须要设置高度,否则div是没有空间的,那背景图片自然也不会显示。如果是body就不用,因为body自带高度。

设置为背景图片的局限性是无法设置超链接、title、alt等图片的属性。如果不是背景图片,尽量不要用这种格式。

感谢你能够认真阅读完这篇文章,希望小编分享的“css如何使图片居中”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

推荐阅读:
  1. css中怎么让img图片居中
  2. 怎样使div中的图片水平垂直居中

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

css

上一篇:javascript怎么获取用户输入的值

下一篇:Java如何实现操作JSON的便捷工具类

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》