绝对定位元素水平垂直居中的两种常见方法

简介:

一、负外边距

方法:绝对定位元素的尺寸已知,top设置为50%,left设置为50%,外边距margin取负数,大小是宽度width和高度height的一半,有内边距padding时要加上padding值再取半。具体代码如下:

html代码:

<div class="box">
    <div class="box1"></div>
</div>

css代码:

.box{
    position: relative;
    width: 200px;
    height: 200px;
    background: yellow;
}

.box1{
    position: absolute;
    top: 50%;
    left:50%;    
    background: red;
    width: 100px;
    height: 100px;
    padding: 10px;
    margin-top: -60px;
    margin-left: -60px;
}

浏览器显示如下:

screenshot

除了这种常用方法外,在网上还看到了另一种比较简便的方法,整理如下:

二、利用margin: auto实现居中

方法:设置绝对定位元素top和bottom的值相等,left和right的值相等。但是left和right的值不能超过其相对元素width减去它自身width的一半,否则绝对定位会优先选取left值进行定位。top和bottom无此限制。最好配合overflow:auto防止溢出。具体代码如下:

css代码:

.box1{
    position: relative;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100px;
    height: 100px;
    background: red;
    overflow: auto;//当内部内容较多时,会自动出现滚动条
}

浏览器显示同上。

相关文章
|
JavaScript 前端开发
vue element-ui分页插件 始终保持在页面底部样式
vue element-ui分页插件 始终保持在页面底部样式
423 0
|
11月前
|
云安全 存储 监控
云计算安全:AWS与Azure的安全策略与实践比较
【10月更文挑战第26天】本文详细比较了AWS和Azure在安全性方面的策略和实践,涵盖身份与访问管理、数据加密与保护以及安全监控与响应。通过代码示例展示了两家云服务提供商在实际应用中的具体操作,帮助企业在选择云服务时做出明智决策。
241 0
|
SQL 数据采集 数据挖掘
深入理解SQL中的DISTINCT语句及其应用
【8月更文挑战第31天】
879 0
|
11月前
|
编解码 前端开发 开发者
前端开发的必修课:如何让你的网页在不同设备上完美呈现?
【10月更文挑战第30天】随着互联网的普及,用户访问网页的设备种类繁多。前端开发者需确保网页在不同设备上完美呈现。本文介绍了一些最佳实践,包括使用响应式设计、相对单位、灵活的图片和视频、测试与优化及考虑交互设计,帮助实现跨设备兼容。
406 2
|
11月前
|
弹性计算 监控 Cloud Native
云原生架构下的性能优化实践与策略####
在数字化转型加速的今天,云原生技术以其弹性、敏捷和高效的特点成为企业IT架构转型的首选。本文深入探讨了云原生架构的核心理念,通过具体案例分析,揭示了性能优化的关键路径与策略,为开发者和企业提供了可操作的实践指南。 ####
|
11月前
|
监控 JavaScript 前端开发
使用 `defer` 属性异步加载 JavaScript
【10月更文挑战第24天】使用 `defer` 属性异步加载 JavaScript 是一种有效的提高页面性能和用户体验的方法。通过合理设置 `defer` 属性,可以在不影响页面渲染的情况下异步加载脚本,并确保脚本的执行顺序。在实际应用中,需要根据具体情况选择合适的加载方式,并注意处理可能出现的问题,以确保页面能够正常加载和执行。
|
机器学习/深度学习 人工智能 算法
探索AI在医疗诊断中的应用:挑战与机遇
本文旨在探讨人工智能(AI)在医疗诊断领域的应用,分析其在提高诊断效率和准确性方面的潜力。同时,讨论了当前面临的挑战,包括数据隐私、算法透明度以及技术普及等问题。通过案例研究,本文展示了AI如何在实际医疗场景中提供辅助诊断,并提出了相应的解决策略。
|
JavaScript Java Linux
逆向神器Frida
逆向神器Frida
331 0
|
Linux 容器 Kubernetes
环境异常解决方案-CentOS 7 网络异常【Failed to start LSB: Bring up/down networking】
问题呈现 今天启动Kubernetes集群的时候发现部署的zookeeper集群有一个节点始终启动不成功,然后查看了一下日志发现报错信息是【getsockopt: no route to host】: error 根据以前的经验,这多半是...
8826 0
|
机器学习/深度学习 JavaScript 数据挖掘
【理论+案例实战】Python数据分析之逻辑回归(logistic regression)
逻辑回归是分类当中极为常用的手段,它属于概率型非线性回归,分为二分类和多分类的回归模型。对于二分类的logistic回归,因变量y只有“是”和“否”两个取值,记为1和0。假设在自变量x1,x2,……,xp,作用下,y取“是”的概率是p,则取“否”的概率是1-p。
14938 0