宽度高度不固定的div 如何水平居中以及垂直居中

在网页设计中,我们经常需要将宽度高度不固定的 div 元素水平居中以及垂直居中,以使其更好地适应页面布局。下面是一个完整攻略,包含了如何使用 CSS 将 div 元素水平居中以及垂直居中的过程和两个示例说明。

CSS 如何将 div 元素水平居中以及垂直居中的过程

1. 使用 flexbox 布局

我们可以使用 CSS 的 flexbox 布局来将 div 元素水平居中以及垂直居中。下面是一个示例:

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

.box {
  width: 200px;
  height: 200px;
  background-color: #ddd;
}

上述代码中,我们使用 flexbox 布局将 div 元素水平居中以及垂直居中。我们将 .container 元素的 display 属性设置为 flex,以启用 flexbox 布局。我们将 .container 元素的 justify-content 属性设置为 center,以使其水平居中。我们将 .container 元素的 align-items 属性设置为 center,以使其垂直居中。我们还将 .container 元素的高度设置为 100vh,以使其占据整个视口。我们将 .box 元素的宽度和高度设置为 200px,并将其背景颜色设置为 #ddd,以使其更加美观。

2. 使用 absolute 定位

我们也可以使用 CSS 的 absolute 定位来将 div 元素水平居中以及垂直居中。下面是一个示例:

<div class="container">
  <div class="box"></div>
</div>
.container {
  position: relative;
  height: 100vh;
}

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

上述代码中,我们使用 absolute 定位将 div 元素水平居中以及垂直居中。我们将 .container 元素的 position 属性设置为 relative,以使其成为 .box 元素的相对定位容器。我们将 .container 元素的高度设置为 100vh,以使其占据整个视口。我们将 .box 元素的 position 属性设置为 absolute,以使其脱离文档流。我们将 .box 元素的 top 属性设置为 50%,以使其垂直居中。我们将 .box 元素的 left 属性设置为 50%,以使其水平居中。我们将 .box 元素的 transform 属性设置为 translate(-50%, -50%),以使其相对于自身的宽度和高度向左上方移动 50%。我们还将 .box 元素的宽度和高度设置为 200px,并将其背景颜色设置为 #ddd,以使其更加美观。

示例说明

下面是两个示例,演示如何使用 CSS 将 div 元素水平居中以及垂直居中。

示例一:使用 flexbox 布局

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

.box {
  width: 200px;
  height: 200px;
  background-color: #ddd;
}

上述代码中,我们使用 flexbox 布局将 div 元素水平居中以及垂直居中。我们将 .container 元素的 display 属性设置为 flex,以启用 flexbox 布局。我们将 .container 元素的 justify-content 属性设置为 center,以使其水平居中。我们将 .container 元素的 align-items 属性设置为 center,以使其垂直居中。我们还将 .container 元素的高度设置为 100vh,以使其占据整个视口。我们将 .box 元素的宽度和高度设置为 200px,并将其背景颜色设置为 #ddd,以使其更加美观。

示例二:使用 absolute 定位

<div class="container">
  <div class="box"></div>
</div>
.container {
  position: relative;
  height: 100vh;
}

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

上述代码中,我们使用 absolute 定位将 div 元素水平居中以及垂直居中。我们将 .container 元素的 position 属性设置为 relative,以使其成为 .box 元素的相对定位容器。我们将 .container 元素的高度设置为 100vh,以使其占据整个视口。我们将 .box 元素的 position 属性设置为 absolute,以使其脱离文档流。我们将 .box 元素的 top 属性设置为 50%,以使其垂直居中。我们将 .box 元素的 left 属性设置为 50%,以使其水平居中。我们将 .box 元素的 transform 属性设置为 translate(-50%, -50%),以使其相对于自身的宽度和高度向左上方移动 50%。我们还将 .box 元素的宽度和高度设置为 200px,并将其背景颜色设置为 #ddd,以使其更加美观。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:宽度高度不固定的div 如何水平居中以及垂直居中 - Python技术站

(0)
上一篇 2023年5月18日
下一篇 2023年5月18日

相关文章

  • CSS学习中的瓶颈期深入分析

    CSS学习中的瓶颈期深入分析 CSS是前端开发中非常重要的一部分,但是学习CSS也是绝大部分前端人员在成长道路上经历的瓶颈期。本文将深入分析CSS学习中的瓶颈期,并提出攻略,帮助读者克服瓶颈期。 瓶颈期的表现 学习CSS初期,初学者都能掌握CSS的基本语法和一些简单的样式效果,例如改变字体大小、颜色等。然而,一旦深入学习,就会发现CSS的细节非常繁多,如布局…

    css 2023年6月10日
    00
  • javascript 控制超级链接的样式代码

    要控制超链接的样式,需要使用CSS语言来设置样式。下面是一些常见的CSS属性,以及它们如何影响超链接的外观: color:设置链接文本的颜色。 text-decoration:设置链接下划线的样式。可以使用下列属性: none:去掉下划线。 underline:添加下划线。 line-through:添加中划线。 font-weight:设置链接文本的字体粗…

    css 2023年6月10日
    00
  • sublime text2 使用技巧心得小结

    Sublime Text2 使用技巧心得小结 Sublime Text2 是一款功能强大且可定制程度极高的文本编辑器,它可以根据不同的需求进行个性化设置,提高工作效率。以下是一些 Sublime Text2 使用技巧小结。 1.快捷键的使用 Sublime Text2 中有许多强大的快捷键,熟练掌握这些快捷键能够在编写代码时提高效率。以下是一些比较实用的快捷…

    css 2023年6月9日
    00
  • BOM操作querySelector querySeletorAll获取标签对象

    下面是“BOM操作querySelector querySeletorAll获取标签对象”的完整攻略: 什么是BOM BOM(Browser Object Model)是浏览器对象模型,主要针对浏览器窗口和框架(frameset)进行编程。BOM由许多对象组成,包括Window、Navigator、Screen、History、Location、Docume…

    css 2023年6月10日
    00
  • 给DIV添加滚动条的实现代码

    给DIV添加滚动条是一个非常常见的需求,下面是一份实现代码的攻略,其中包含两个示例说明。 一、HTML结构 首先需要有一个 div 元素用来承载内容,一般可以指定一个固定宽高,例如: <div class="scroll-box" style="width: 300px; height: 200px;"> …

    css 2023年6月10日
    00
  • 如何使用css3实现一个类在线直播的队列动画的示例代码

    让我来详细讲解一下“如何使用css3实现一个类在线直播的队列动画”的攻略。以下是完整的步骤: 1.确定队列的基本样式 首先,我们需要先确定队列的基本样式。队列的基本样式可以使用CSS3的transform属性来实现。transform属性可以让我们改变HTML元素的形状、大小和位置,因此我们可以用它来控制队列的位置和大小。 下面是一个示例的代码,用来确定队列…

    css 2023年6月11日
    00
  • 从css 3d说到空间坐标轴附源码

    从CSS 3D到空间坐标轴附源码,是一项涉及3D视觉效果的技术,可以在Web页面中呈现更丰富、更生动的内容。下面是详细讲解这个过程的攻略: 什么是CSS 3D? CSS 3D是CSS3中的一种功能,支持在Web页面上实现3D视觉效果。其本质是一个立体坐标系,能够控制元素的位置、方向、大小等属性,让元素在3D空间中进行位移、旋转、缩放等变换。实现CSS 3D需…

    css 2023年6月10日
    00
  • 简单掌握CSS3将文字描边及填充文字颜色的方法

    下面是关于“简单掌握CSS3将文字描边及填充文字颜色的方法”的攻略: CSS3文字描边及填充方法 在CSS3中,我们可以通过使用text-stroke和-webkit-text-stroke属性轻松地为文字添加轮廓线和外部描边。 1. 描边 要添加轮廓线或描边,我们可以使用以下CSS样式: /* 加粗文本 */ bold { stroke: black; s…

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