为什么 Margin:auto 单独无法使定位元素居中
尝试使用以下位置将 div 元素在父容器中居中时: Absolute 或position: 固定属性,单独使用margin: auto 可能不够。
理解CSS 规范
根据CSS 规范,对于position 的元素:相对或位置:静态(正常流程),将 margin-left 和 margin-right 设置为自动将元素相对于其包含块水平居中,因为它们的使用值变得相等。但是,这不适用于position:absolute或position:fixed的元素。
对于绝对或固定定位的元素,其中left、width、right三者均为auto,则使用margin-left的值和 margin-right 设置为 0 以防止居中。要使这些元素居中,必须定义左、右或宽度的值。
设置左、右和宽度的效果
如果左、右,和宽度都已定义,边距得到相等的值,从而导致居中。省略任何这些值都会导致元素偏离中心对齐。
不同情况的演示
下表演示了各种情况,如 CSS 中所述规格:
Margin Setting | Centring |
---|---|
margin-left: auto; margin-right: auto | Yes (flow element) |
margin-left: auto; margin-right: auto | No (absolute/fixed element) |
left: auto; right: auto; width: auto | No (margin set to 0) |
left: 0; right: 0; width: auto | No (margin set to 0) |
right: auto; left: auto; | No (margin set to 0) |
left: auto; right: auto; width: 200px | Yes (equal margins) |
left: 0; width: auto | Yes (equal margins) |
right: 0; width: auto | Yes (equal margins) |
以上是为什么 `margin: auto` 不绝对居中或固定位置的元素?的详细内容。更多信息请关注PHP中文网其他相关文章!

前几天我得到了这个问题。我的第一个想法是:奇怪的问题!特异性是关于选择者的,而在符号不是选择器,那么...无关紧要?

在这篇文章中,我们将使用我构建和部署的电子商务商店演示来进行Netlify,以展示如何为传入数据制作动态路线。这是一个公平的


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

记事本++7.3.1
好用且免费的代码编辑器