CSS常见图片居中,文字居中,版心居中集合

article/2025/9/20 6:12:53

1.margin:0 auto;(水平居中)

适用于(块级元素)

wrapper(wrapper只负责版心的效果)定义一个固定的宽度;margin(外边距)左右的值设置为auto。

让带有wrapper的标签,都能居中布局

margin:0 auto对于已经定位的元素无效,已定位元素需要用left和top定位

如果需要让div,p,h(大盒子)水平居中?

margin:0 auto;直接给元素本身设置。

 <div class="box wrapper"><img src="./tutu.jpg" alt=""></div>

 这里是让带有wrapper和它的子元素一起居中,并没有让img在box中居中。

 .wrapper {width: 1226px;margin: 0 auto;}.box {width: 400px;height: 400px;background-color: rgb(117, 51, 216);}

margin+width

2.margin: auto;(垂直水平居中)

适用于已知宽高

box添加绝对定位;设置上下左右为0;margin: auto;即可实现垂直水平都居中。

 <div class="box"><img src="./tutu.jpg" alt=""></div>
 .box {width: 400px;height: 400px;background-color: rgb(117, 51, 216);position: absolute;top: 0;bottom: 0;left: 0;right: 0;margin: auto;}

绝对定位+上下左右+margin

也可用于图片(垂直水平居中),只需要把定位改一下即可

 .box {width: 400px;height: 400px;background-color: rgb(117, 51, 216);position: relative;}img {position: absolute;top: 0;bottom: 0;left: 0;right: 0;margin: auto;}

3. 定位居中(垂直水平居中)

适用于未知宽高,已知高度也可以用

子绝父相
父元素 position: relative;(相对定位);自身元素position: absolute;(绝对定位)

top: 50%;使自身元素距离上方“父元素的50%高度”的高度;left: 50%;使自身元素距离左方“父元素的50%宽度”的宽度。

transform: translate(-50%,-50%);自身元素再往左,往上平移自身元素的50%宽度和高度。

 .box {width: 400px;height: 400px;background-color: rgb(117, 51, 216);position: relative;}img {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);}

定位+变形

4.text-align水平居中

主要使用:文字居中

  • 设置给父元素,让父元素里面的文字居中。
  • 父元素为块元素,子元素为行内/行内块元素(p块元素也可以),让子元素居中显示。
  • 也可以将父元素(行内元素)转换为块级元素,同样可以居中显示。
  • 设置浮动,定位后,父元素加text-aglin居中,子元素不能生效。
 .box {width: 600px;height: 400px;background-color: rgb(117, 51, 216);text-align: center;}

text-align:center能让哪些元素水平居中?

(给父元素设置)文本;行内元素:span,a等;行内块元素:input,img等。

5.行高line-height垂直居中

适用于:文本

通过控制一行的上下间距,让单行文本垂直居中

line-height:文字父元素高度

.box {height: 400px;}p {line-height: 400px;}

(扩展)只要文字本身高度:

网页精准布局(取消上下间距)line-height:1

6.Flex居中(垂直水平居中)

 .box {/* flex布局 */display: flex;/* 子元素水平居中 */justify-content: center;/* 子元素垂直居中 */align-items: center;}

但是浏览器兼容性较差,常用于移动端。

7.width:fit-content; (水平居中)

设置width:fit-content;同时设置margin:auto;实现元素居中;

图片属于可替换元素,具有行内块特点,但是这里使用此方法居中不行,需要将图片转换成块元素,原因不清楚(值得深入探讨)。图片需要添加显示转换。

文字等其他元素可以实现居中。

  img {/* img为可替换元素,具有行内块特点 */display: block;width: fit-content;margin: 0 auto;}

缺点:

向内自适应:元素width设置了宽度,同时设置了fit-content;此时,会冲突。

扩展)fit-content属性可以把内容包裹起来

内容长度>规定宽度(box)时,会自动换行,不超过规定宽度;

内容长度<规定宽度时,按照规定宽度设置长度。


写了多少文字,显示多长

 .box {width: 600px;height: 400px;background-color: rgb(117, 51, 216);}p {width: fit-content;background-color: pink;}

8.margin-top(垂直水平居中)

元素设置宽高;margin为元素:  -(宽高一半);

margin-top: -100px;元素往上移到自身高度的一半。其余同理。

 .box {position: relative;}img {width: 200px;height: 200px;position: absolute;top: 50%;left: 50%;margin-top: -100px;margin-left: -100px;}

缺点:

需要设置元素宽高。

9.vertical-align:middle(垂直居中)

行内,行内块,浏览器都当文字处理,如果是大的字和小的字,都默认基线对齐

行内元素的基线相对于该元素所在行的基线的垂直对齐。

如果行内块和行内文字无法通过vertical-align或行高对齐,可通过定位

<div class="box"><span>你好</span><img src="./tutu.jpg" alt=""></div>
 img {vertical-align: middle;}


http://chatgpt.dhexx.cn/article/7Amp0x6D.shtml

相关文章

垂直居中的方法

总结垂直居中的方法 <div class"layout-wrapper"><div class"box1"><h4>垂直居中方法</h4></div></div>.layout-wrapper{width:300px;height:300px;border: 1px solid red; } .box1{height:150px;width:150px;border…

win10任务栏怎样居中win10任务栏居中设定教程

win11系统内置任务栏居中的设置项&#xff0c;但是win10系统没有&#xff0c;倘若win10顾客也想让自己的任务栏居中的话&#xff0c;应当怎样设置呢&#xff1f;你先撤销任务栏锁住&#xff0c;随后新建菜单栏。之后选定一个空白文件夹&#xff0c;之后任务栏就会发生两条竖杠&…

HTML+CSS,让div在屏幕中居中(水平居中+垂直居中)方法总结

最近写网页经常需要将div在屏幕中居中显示&#xff0c;遂记录下几个常用的方法&#xff0c;都比较简单。 水平居中直接加上<center>标签即可&#xff0c;或者设置margin:auto;当然也可以用下面的方法 下面说两种在屏幕正中&#xff08;水平居中垂直居中&#xff09;的方…

css字体居中(css字体居中对齐)

css如何让表格居中 层叠样式表(英文全称&#xff1a;Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。 关于网页设计CSS文本垂直居中的问题 text-align:center;文本居中显示 vertical-align…

css图片居中

相信很多工程师都搜索过css图片居中的方法吧&#xff0c;但总是出现各种各样的问题。其实css图片居中分为很多种情况 第一种&#xff1a;已知父元素的高度&#xff0c;单独设置文字水平垂直居中&#xff0c;我们只需要设置css样式line-hight:同父元素高度&#xff0c;text-alig…

html中如何居中

第一步&#xff1a;打开网页编辑器&#xff0c;新建一个网页文件。 第二步&#xff1a;我们编写两个div标签用来做一个对比演示&#xff0c;既嵌套式div。 第三步&#xff1a;首先我想让最外层的div进行真正意义上的居中——既在浏览器页面水平方向和垂直方向都居中显示。 …

HTML中进行居中设置

html居中的方法如下&#xff1a; 1、打开HTML的编辑器。 2、找到需要居中的图片或者文字。 3、在body里面&#xff0c;设置CSS样式。 4、添加样式为&#xff1a;text-align&#xff1a;center &#xff1b;即可。 超文本标记语言&#xff08;Hyper Text Markup Language&a…

div居中

HTML的div居中 一、margin:0px auto; 给需要居中的div设置一个宽度&#xff0c;然后设置元素的上下外边距为 相等 左右外边距为 auto&#xff0c;比如&#xff0c;margin:0px auto。 则可以实现 div 居中显示。 对于浮动元素&#xff0c;设置其左右外边距为关键字 auto 是无效…

HTML元素居中(文字居中,块居中【垂直/水平居中】)

一、文字、行内元素水平居中 给父级属性设置text-align: center即可 HTML代码: <div><p>p</p></div> <div><span>span</span></div> <div><a href"#">a</a></div>CSS代码&#xff1a; …

html让文字居中

html让文字居中的方法&#xff1a;1、给文本所在标签加CSS属性值“text-align:center”&#xff1b;2、在行内标签或行内块级标签中加CSS属性值“text-align:left”。 本文操作环境&#xff1a;windows7系统、HTML5&&CSS3版、Dell G3电脑。 两种情况&#xff1a;1、文…

word文字居中怎么设置

电脑编辑文档时&#xff0c;想要把文字内容居中显示&#xff0c;那么word怎么居中文字&#xff0c;今天和大家一起学习下。 方法1 1&#xff0c;打开新建的word文档&#xff0c;输入文字。 2&#xff0c;选中文字&#xff0c;然后点击工具栏的“居中对齐”&#xff0c;确定即…

8种css居中实现的详细实现方式了

这是一篇关于居中对齐方式的总结 开篇之前&#xff0c;先问一下大家都知道几种居中的实现方式&#xff1f; 面试时答出来两三个就不错了&#xff0c;就怕面试官还让你继续说。今天就来总结一下这些居中的方式 使用flex布局设置居中。使用flex 时也能通过给子项设置margin: au…

各种居中方法汇总(究极版)

本文部分参考文章&#xff1a;https://github.com/ljianshu/Blog/issues/29 每一部分后另附相关实践代码 前言 本文主要介绍水平居中&#xff0c;垂直居中&#xff0c;还有水平垂直居中各种办法&#xff0c;思维导图如下&#xff1a; 一、水平居中 1.行内元素水平居中 利用…

css居中大全(文字居中、块居中、水平居中、垂直居中)

css居中 一、水平居中 1.块本身水平居中 div{width: 100px;height: 100px;border: 1px solid #000;margin:auto;} <div>我本身水平居中 </div>div的margin不设值怎么表示&#xff1a;不设值&#xff0c;也是auto /*给块居中 上20&#xff0c;左右居中&#xff…

Skipped breakpoint at because it happened inside debugger evaluation

问题描述&#xff1a; 在多线程项目中&#xff0c;在idea中打断点时&#xff0c;有时会遇到下面这种情况&#xff1a; idea左下角出现一行红底或者绿底文字提示&#xff1a; Skipped breakpoint at because it happened inside debugger evaluation 然后我们能感受到的就是…

IDEA Debug出现:Skipped breakpoint at because it happened inside debugger evaluation

在使用IDEA debug功能时&#xff0c;没有出现断点处程序变量快照&#xff0c;而是进入了如下debug界面&#xff0c;并打开了URL类加载程序&#xff1a; 网上有一些方法&#xff0c;但其实都没用&#xff0c;或者说没有从根本上解决这个问题&#xff0c;下面给出我的方法。 ok&a…

ssh上传公钥报 All keys were skipped because they already exist on the remote system.

项目需要用Ansible进行多台服务器部署&#xff0c;服务器申请下来给app用户赋了权限后root用户就被上收了。 在做ssh免密登陆时报错&#xff1a; sudo ssh-copy-id -i /root/.ssh/id_rsa.pub app22.10.206.140 试了很多方法都没用&#xff0c;结果在140服务器新建/root/.ssh这…

创建vue项目的时候报错:Skipped git commit due to missing username and email in git config.

创建vue项目的时候报错&#xff1a; WARN Skipped git commit due to missing username and email in git config, or failed to sign commit. You will need to perform the initial commit yourself. 原因&#xff1a; git 进行初始化提交 没有绑定 对应的 git用户名和邮箱 …

Skipped breakpoint because it happened inside debugger evaluation

在debug项目时总是会莫名其妙的多出system.out的数据&#xff0c;莫名其妙&#xff0c;搜到这篇文章&#xff0c;帮助很大&#xff0c;转载一下 解决Skipped breakpoint at %code reference% because it happened inside debugger evaluation的通用方法。 先尝试去掉勾选 Ena…

Elasticsearch的search之_shards skipped之谜

es从 v5.6 开始引入了 pre-filter 机制&#xff08;skipped&#xff09;&#xff1a;对于 Date 类型的 Range 查询&#xff0c;在对分片执行搜索之前&#xff0c;先检查一下分片是否包括被查询的数据范围&#xff0c;如果查询的范围与分片持有的数据没有交集&#xff0c;就跳过…