绝对定位元素的水平垂直居中的方法(3种任选)

yizhihongxing

绝对定位元素的水平垂直居中是前端开发中经常遇到的问题,下面将详细讲解3种任选的方法。

方法一:使用绝对定位实现水平垂直居中

首先,在 CSS 中设置绝对定位,并将 left 和 top 设置为 50%。此时元素的左上角将位于页面的中心。

.position{
  position:absolute;
  left:50%;
  top:50%;
}

接下来,需要使用 JavaScript 将元素的宽度和高度分别除以 2,再利用 marginLeft 和 marginTop 将其移回以左上角为基准的位置。

let element = document.querySelector('.position');
element.style.marginLeft = - element.offsetWidth / 2 + 'px';
element.style.marginTop = - element.offsetHeight / 2 + 'px';

方法二:使用 flexbox 实现水平垂直居中

使用 flexbox 实现水平垂直居中可以更方便。

首先,在容器中设置 display: flex 声明容器使用 flex 布局。

.container{
  display:flex;
  justify-content:center;
  align-items:center;
}

接下来,将要进行居中的元素包裹在容器中即可。

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

方法三:使用 CSS3 transform 实现水平垂直居中

使用 CSS3 transform 可以让元素相对于自身的中心点旋转,从而实现居中。首先设置绝对定位,并将 top 和 left 设置为 50%,同时在元素中添加如下代码:

.position {
  position:absolute;
  left:50%;
  top:50%;
  transform: translate(-50%,-50%);
}

此时元素的左上角将位于页面的中心。

接下来,可以用 CSS3 transform 进行旋转,如下所示:

.position{
  position:absolute;
  left:50%;
  top:50%;
  transform: translate(-50%,-50%) rotate(45deg);
}

其中 rotate(45deg) 表示元素将相对于自身的中心点旋转 45 度。

示例:

<div class="container">
  <div class="box"></div>
</div>
.container{
  display:flex;
  justify-content:center;
  align-items:center;
}

.box{
  width:200px;
  height:200px;
  background-color:#ccc;
}
.position{
  position:absolute;
  left:50%;
  top:50%;
}
.position{
  position:absolute;
  left:50%;
  top:50%;
  transform: translate(-50%,-50%) rotate(45deg);
}

以上就是三种实现绝对定位元素水平垂直居中的方法,任选其一即可。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:绝对定位元素的水平垂直居中的方法(3种任选) - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • css3个性化字体_动力节点Java学院整理

    CSS3个性化字体攻略 1. 引入字体文件 首先,需要引入自定义字体文件,常见的字体文件格式有.woff、.eot、.ttf、.otf等。可以使用@font-face规则将自定义字体文件引入到网页中: @font-face { font-family: myFont; /*自定义字体名称*/ src: url(‘myFont.woff’) format(‘w…

    css 2023年6月9日
    00
  • CSS中div、span和center元素

    下面我将对“CSS中div、span和center元素”的完整攻略进行详细讲解。 1. div元素 1.1 div元素的作用 div元素是CSS中的块级元素,其作用是用来分组HTML元素,并且可以给分组的元素设置样式和属性。通常情况下,我们会使用div元素来布局网页的各个部分,比如导航栏、主体内容、底部信息等等,同时也可以对这些部分分别设置不同的样式。 1.…

    css 2023年6月9日
    00
  • CSS揭秘之多重边框的实现

    CSS揭秘之多重边框的实现,可以使用伪元素和box-shadow属性实现。实现步骤如下: 使用伪元素实现多重边框 为目标元素添加position: relative属性,以便在伪元素中设置绝对定位。 使用::before和::after创建两个伪元素,用于实现前景和背景的多重边框效果。 分别设置伪元素的content属性为空字符串,position属性为绝对…

    css 2023年6月10日
    00
  • 利用php+mcDropdown实现文件路径可在下拉框选择

    利用php与mcDropdown实现文件路径可在下拉框选择的攻略: 首先在HTML文档中引入mcDropdown库和相关样式库: <head> <link rel="stylesheet" href="path/to/mcDropdown.css"> <script src="p…

    css 2023年6月10日
    00
  • jQuery中iframe的操作(点击按钮新增窗口)

    下面是“jQuery中iframe的操作(点击按钮新增窗口)”的完整攻略。 背景 在开发网页过程中,有时会使用iframe来嵌套其他网页或展示某些内容。如果需要在父页面中操作子页面中的内容,就需要对iframe进行一些操作。 操作一:选择iframe中的元素 可以使用contents()选择器来获取iframe中的内容,示例代码如下: <!– 父页面…

    css 2023年6月10日
    00
  • html中css三种常见的样式选择器

    HTML中的CSS样式选择器是用来选择和修改HTML内容中的样式的工具。其中有三种常见的样式选择器,分别是标签选择器、id选择器和类选择器。下面来详细讲解一下这三种常见的样式选择器。 标签选择器 标签选择器是最常用、最基础的一种选择器,可以利用HTML标签名称来选择元素。例如,如果我们想将所有段落文字的颜色修改为红色,可以如下编写CSS样式: p{ colo…

    css 2023年6月9日
    00
  • coolcode转SyntaxHighlighter与Mysql正则表达式实现分析

    Coolcode转SyntaxHighlighter与Mysql正则表达式实现分析 本篇攻略主要介绍如何使用Coolcode和SyntaxHighlighter将代码块进行高亮显示,并结合Mysql正则表达式进行分析。 步骤1:Coolcode转SyntaxHighlighter Coolcode是一种代码高亮工具,可以将代码渲染成漂亮的样式。但是它存在一些…

    css 2023年6月9日
    00
  • CSS中@用法小结(示例详解)

    以下是“CSS中@用法小结(示例详解)”的完整攻略: CSS中@用法小结 在 CSS 中,@ 符号用于定义一些特殊的规则和语法。以下是一些常用的 @ 规则。 @import 规则 @import 规则用于导入外部样式表,以下是一个示例: @import url("styles.css"); @media 规则 @media 规则用于定义媒…

    css 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部