首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使div居中(水平和垂直),如果向下滚动,不要停留在中间

要使一个div居中(水平和垂直),并且在向下滚动时不停留在中间,可以使用以下方法:

  1. 使用CSS Flexbox布局:
    • 在父容器上应用display: flex;justify-content: center;属性,使子元素水平居中。
    • 在父容器上应用align-items: center;属性,使子元素垂直居中。

示例代码:

代码语言:html
复制

<style>

.container {

代码语言:txt
复制
 display: flex;
代码语言:txt
复制
 justify-content: center;
代码语言:txt
复制
 align-items: center;
代码语言:txt
复制
 height: 100vh; /* 设置父容器高度为视口高度,使子元素垂直居中 */

}

</style>

<div class="container">

代码语言:txt
复制
 <!-- 内容 -->

</div>

代码语言:txt
复制
  1. 使用绝对定位和transform属性:
    • 将父容器设置为相对定位(position: relative)。
    • 将子元素设置为绝对定位(position: absolute)。
    • 使用top: 50%;left: 50%;将子元素的左上角定位在父容器的中心位置。
    • 使用transform: translate(-50%, -50%);将子元素向左上方移动自身宽度和高度的一半,使其居中。

示例代码:

代码语言:html
复制

<style>

.container {

代码语言:txt
复制
 position: relative;
代码语言:txt
复制
 height: 100vh; /* 设置父容器高度为视口高度,使子元素垂直居中 */

}

.content {

代码语言:txt
复制
 position: absolute;
代码语言:txt
复制
 top: 50%;
代码语言:txt
复制
 left: 50%;
代码语言:txt
复制
 transform: translate(-50%, -50%);

}

</style>

<div class="container">

代码语言:txt
复制
 <div class="content">
代码语言:txt
复制
   <!-- 内容 -->
代码语言:txt
复制
 </div>

</div>

代码语言:txt
复制

以上两种方法都可以实现div居中(水平和垂直),并且在向下滚动时不会停留在中间。这些方法适用于各种场景,例如在网页布局中居中显示一个弹窗、加载动画或其他内容。

腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Fabric.js 居中元素 🎗️

本文总结了 Fabric.js 常用的将元素居中的方法,其中包括: 基于视窗的水平居中 基于画布的水平居中 带动画效果的水平居中 基于视窗的垂直居中 基于画布的垂直居中 带动画效果的垂直居中 同时实现水平和垂直居中...添加一个矩形,之后要居中的对象就是它了。 添加鼠标滚轮滚动时缩放画布(方便演示 基于视窗 和 基于画布 的区别)。 添加鼠标拖拽画布平移位置(方便演示 基于视窗 和 基于画布 的区别)。...和 拖拽画布 部分其实可以不要的,写上这些代码主要是为了方便演示。...带动画效果的居中是根据画布来居中的,并非视窗! 垂直居中 垂直居中和水平居中的用法差不多,只是改了一下api。水平居中是用 “H” ,垂直居中用 “V”。...(rect) 复制代码 水平 + 垂直 同时居中 Fabric.js 还提供同时水平和垂直居中的功能。

3.6K20

建议收藏!总结了42种前端常用布局方案

定位实现水平垂直居中方案(三) 步骤如下: 使子元素相对于容器元素定位 子元素开启绝对定位 将子元素拉满整个容器 通过margin:auto实现水平垂直居中 实现CSS代码如下: .parent {...定位实现水平垂直居中方案(四) 步骤如下: 使子元素相对于容器元素定位 子元素开启绝对定位 设置该元素的偏移量,值为50% 通过 translate 反向偏移的方式,实现居中 实现 CSS 代码如下:...Flex方案 实现步骤如下 开启 flex 布局 将子元素布局方向修改为垂直排列 设置最小高度为当前视口,使不管中间部分有多高,始终都可以保持在底部 设置中间部分容器高度为自适应 实现CSS代码如下:...使用calc函数实现 实现步骤如下: 通过 calc 函数计算出中间容器的高度。 中间出现滚动条的容器设置overflow: auto即出现滚动条的时候出现滚动条。...column; } .content { /* 如果超出出现滚动条 */ overflow: auto; /* 设置 中间 部分自适应 */ flex: 1; } .right-in

4.1K30
  • 建议收藏!总结了 42 种前端常用布局方案

    定位实现水平垂直居中方案(三) 步骤如下: 使子元素相对于容器元素定位 子元素开启绝对定位 将子元素拉满整个容器 通过margin:auto实现水平垂直居中 实现CSS代码如下: .parent {...定位实现水平垂直居中方案(四) 步骤如下: 使子元素相对于容器元素定位 子元素开启绝对定位 设置该元素的偏移量,值为50% 通过 translate 反向偏移的方式,实现居中 实现 CSS 代码如下:...Flex方案 实现步骤如下 开启 flex 布局 将子元素布局方向修改为垂直排列 设置最小高度为当前视口,使不管中间部分有多高,始终都可以保持在底部 设置中间部分容器高度为自适应 实现CSS代码如下:...使用calc函数实现 实现步骤如下: 通过 calc 函数计算出中间容器的高度。 中间出现滚动条的容器设置overflow: auto即出现滚动条的时候出现滚动条。...column; } .content { /* 如果超出出现滚动条 */ overflow: auto; /* 设置 中间 部分自适应 */ flex: 1; } .right-in

    4.2K30

    在 flex 布局中通过使用 margin 实现水平垂直居中以及其他常见的前端布局

    如上图所示,元素在水平和垂直方向都居中了。...: flex-start; } 如上图所示,justify-content: center; 使元素在水平方向居中;align-items: flex-start; 使元素垂直方向靠近顶部。...: center; } 如上图所示,justify-content: space-between; 使元素在垂直方向居中;align-items: center; 使元素在水平方向两端对齐。...*/ } 相比之下,在 Flexbox 布局中,margin: auto; 具有更多的灵活性,可以同时实现水平和垂直居中对齐。...使用 space-around 时如果最后一行的元素数量不满,元素会在行中均匀分布,导致它们集中在中间,而不是靠左或对齐其他行。 大家在遇到这些情况时是不是就在考虑换用 grid 布局了呢?

    9910

    div水平垂直居中的几种方法

    前言导读 利用 CSS 来实现对象的垂直居中有许多不同的方法,比较难的是选择那个正确的方法。使用 CSS 实现水平居中很容易,但要实现垂直居中并不容易。而且有些方法在一些浏览器中无效。...下面我们看一下使对象垂直集中的几种不同方法,以及它们各自的优缺点。 表格布局 这个方法把一些 div 的显示方式设置为表格,因此我们可以使用表格的 vertical-align 属性。...因为有固定高度,或许你想给 content 指定 overflow:auto,这样如果 content 太多的话,就会出现滚动条,以免content 溢出。...使用 margin:auto;使块级元素垂直居中是很简单的。...缺点: IE(IE8 beta)中无效 无足够空间时,content 被截断,但是不会有滚动条出现 如何让文本水平垂直居中 css居中属性

    2.1K20

    前端常用布局方案总结

    定位实现水平垂直居中方案(方法二) 步骤如下: (1). 使子元素相对于容器元素定位; (2). 子元素开启绝对定位; (3). 设置该元素的偏移量,值为50%; (4). ...定位实现水平垂直居中方案(方法三) 步骤如下: (1). 使子元素相对于容器元素定位; (2). 子元素开启绝对定位; (3). 将子元素拉满整个容器; (4)....使中间自适应的宽度为父级容器减去两个定宽的列。...将子元素布局方向修改为垂直排列; (3). 设置最小高度为当前视口,使不管中间部分有多高,始终都可以保持在底部; (4). 设置中间部分容器高度为自适应。...通过calc 函数计算出中间容器的高度。 (2). 中间出现滚动条的容器设置overflow: auto,即根据内容自动出现滚动条。

    2.6K30

    第3章 用CSS3装饰网站

    background-repeat(图像的平铺方式) inherit(从父标签继承 background-repeat 属性的设置) no-repeat(背景图片只显示一次,不重复) repeat(在水平和垂直方向上重复显示背景图片...(当页面滚动时,背景图片跟着页面一起滚动) fixed(将背景图片固定在页面的可见区域) background-position(背景图片在页面中的位置) length(设置背景图片与页面边距水平和垂直方向的距离...,单位cm、mm、px等) percentage(根据页面标签框的宽度和高度的百分比放置背景图片) top(设置背景图片顶部居中显示) center(设置背景图片居中显示) bottom(设置背景图片底部居中显示...) left(设置背景图片左部居中显示) right(设置背景图片右部居中显示) 当需要为背景图片设置多个属性时,可以将属性写为“background”,然后将个属性值写在一行,并且以空格间隔。... 注释:为了使定义生效,a:active 必须位于 a:hover 之后!!

    1.2K30

    css两种常用的不定宽高的水平垂直居中方法,记住它,不再为样式发愁

    css 几种常用的简单容易记住的水平垂直居中方法 前言 正文 第一种方法 第二种方法 结束语 前言 我们在设计网页时,会大量的运用到水平垂直居中如果知道元素的宽高,那水平垂直居中是很简单的,无非是用一下...但是,如果不知道元素的宽高呢? 是不是就会在这上面用点心思了,接下来我给大家介绍两种我设计网页时常用的两种不定宽高的元素水平居中方法吧,放心绝对容易记。...只需要三个在外部元素标签设置三个样式就能实现内部元素的水平垂直居中。...第二种方法 第二种方法运用的就是定位和transform的知识来实现水平垂直居中 元素标签内容 我是box中的内容<...同样的,跟第一种方式的效果一样,也完成了水平和垂直居中

    46610

    【CSS】CSS 总结 ⑦ ( 定位 | 静态定位 | 相对定位 | 绝对定位 | 子绝父相 | 固定定位 | 使用绝对定位设置水平垂直居中 | 堆叠顺序 | 显示模式 | 元素隐藏 ) ★

    三大盒子布局方式 : 普通流 : 又称为 标准流 , 盒子按照从上到下的顺序进行排列 ; 浮动 : 另多个盒子水平排成一列 ; 定位 : 将盒子定位在某个位置 ; 盒子自由漂浮在其它盒子之上 , 可以任意指定水平和垂直方向上的位置...需要居中对齐的地方很多 , 如下图所示 , 右侧的 固定定位 按钮 , 需要在浏览器中居中对齐 , 轮播图中的 五个小圆点 的容器需要居中对齐 ; 1、设置固定尺寸 使 绝对定位 元素 水平 / 垂直...居中 最简单的方法就是 使用标尺测量父容器的宽高 , 通过设置四个边的边偏移量 , 设置元素 水平 / 垂直 居中 ; 2、先偏移50%再回退固定值 父容器 盒子 如果尺寸发生了改变 , 使用上述固定边偏移的方式设置的居中就会出现问题...class="one"> 显示效果 : 12、z-index...; auto : 如果子元素超出父容器显示滚动条 , 如果子元素没有超出父容器不显示滚动条 ; 效果参考 【CSS】清除浮动 ② ( 清除浮动 - 父级元素设置 overflow 样式 | overflow

    14610

    H5C3第四节

    主轴:Flex容器的主轴主要用来配置Flex项目,默认是水平方向侧轴:与主轴垂直的轴称作侧轴,默认是垂直方向的方向:默认主轴从左向右 ,默认侧轴从上到下 ?...设置每一个section的背景颜色 verticalCentered 设定每一个section的内容是否垂直居中,默认true, scrollingSpeed 设置滚动的速度,默认700毫秒 easing...,如果设置为true,则页面会循环滚动,不会出现loopTop与loopBottom那样的跳动。...autoScrolling 是否使用插件的滚动方式,默认true,如果选择false,会出现浏览器子代的滚动条,将不会按页滚动,按照滚动进行滚动。...scrollBar 是否包含滚动条,默认false,如果设置为true,那么浏览器自定的滚动条会出现,这个时候,页面滚动还是按页滚动,但是浏览器也能滚动。不建议开启,不然会不同步。

    5.3K30

    【CSS】使用 固定定位 实现顶部导航栏 ( 核心要点 | 固定定位元素居中设置 | 代码示例 )

    一、核心要点分析 ---- 实现下图所示功能 : 上方有一个固定导航栏 , 水平居中设置 ; 左右两侧各一个广告栏 , 垂直居中设置 ; 1、顶部导航栏要点 顶部导航栏要点 : 使用固定定位 , 上边偏移设置为...*/ text-align: center; /* 该盒子位于最上层 不要被其它盒子覆盖 */ z-index: 3; } 2、固定定位垂直居中设置 设置左右两侧的广告栏在浏览器中垂直居中设置...; 首先 , 将盒子的顶部设置到浏览器垂直中线位置 , position: fixed; /* 该盒子在浏览器左侧 */ /* 上边偏移 50% 之后减去 150 居中设置 */...top: 50%; 然后 , 左侧广告栏高度为 300 像素 , 顶部在中线位置 , 向上移动 150 像素即可使真个广告栏居中设置 ; /* 设置垂直居中对齐 */ margin-top:...class="top"> <div class

    2.9K50

    使用这些不太常用的 CSS 属性,让我在前端布局效率上,又提高了一个层次!

    我们只需使用两行 CSS 代码就可以将元素水平和垂直居中。...与flexbox 结合使用,margin: auto 可以非常轻松地将 flex 项目水平和垂直居中。...我们来看一种更好的方法: li { color: #222; } li::marker { color: #ccc; } 比起上面伪类的方式,这简直不要太爽!...如果仅内容需要居中,不一定非要使用flexbox或grid,使用text-align反而会更简单。 display: inline-Flex 属性 ?...当我第一次了解它时,它改变了很多事情,使我作为前端开发人员的生活更加轻松。 最近,我正在研究显示徽标网格的部分。 由于徽标大小不一致,因此有时很难做到这一点。

    2.1K20

    CSS总结

    {属性:值} 如:p,div,h1,table{属性:值}。   5.标签指定式选择符:如果既想使用id或class,也想同时使用标签选择符。     ...(如果只写border,则后面紧跟着的是粗细、样式、颜色三个子属性)。...,左上角是0 0 ,单位是像素(0px,0px)] 背景图像的依附方式 background-attachment:[scroll ,fixed]     注:背景图像,默认情况下是进行水平和垂直位置上的平铺...2.制作翻转按钮效果:将两张图片进行合成; 八、CSS技巧 [1]:让盒子水平居中,只需将盒子的左右外边距margin设置为auto,即margin:5px auto;   [2]:让盒子的中的内容垂直居中...常见块状元素有:div、p、body、h1~h6等(能设置宽和高,独占一行)。

    2.1K10
    领券