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

使被调用的块相对于父块JS居中

被调用的块相对于父块JS居中,可以通过以下步骤实现:

  1. 首先,需要确定被调用的块和父块的HTML结构和CSS样式。确保父块具有相对定位(position: relative)的CSS属性,以便作为参考点进行居中。
  2. 使用JavaScript来计算被调用块的位置。可以通过以下步骤实现:
    • 获取父块的宽度和高度,可以使用offsetWidth和offsetHeight属性。
    • 获取被调用块的宽度和高度,同样可以使用offsetWidth和offsetHeight属性。
    • 计算被调用块相对于父块的左边距和上边距,可以使用以下公式: leftMargin = (父块宽度 - 被调用块宽度) / 2 topMargin = (父块高度 - 被调用块高度) / 2
  • 使用JavaScript来设置被调用块的位置。可以通过以下步骤实现:
    • 获取被调用块的引用,可以使用getElementById或其他选择器方法。
    • 设置被调用块的CSS属性,包括left和top属性,将其设置为计算得到的左边距和上边距值。

以下是一个示例代码:

HTML结构:

代码语言:txt
复制
<div id="parentBlock">
  <div id="childBlock">被调用的块</div>
</div>

CSS样式:

代码语言:txt
复制
#parentBlock {
  position: relative;
  width: 500px;
  height: 300px;
  border: 1px solid black;
}

#childBlock {
  position: absolute;
  width: 200px;
  height: 100px;
  background-color: lightblue;
}

JavaScript代码:

代码语言:txt
复制
window.onload = function() {
  var parentBlock = document.getElementById("parentBlock");
  var childBlock = document.getElementById("childBlock");

  var parentWidth = parentBlock.offsetWidth;
  var parentHeight = parentBlock.offsetHeight;
  var childWidth = childBlock.offsetWidth;
  var childHeight = childBlock.offsetHeight;

  var leftMargin = (parentWidth - childWidth) / 2;
  var topMargin = (parentHeight - childHeight) / 2;

  childBlock.style.left = leftMargin + "px";
  childBlock.style.top = topMargin + "px";
};

这样,被调用的块就会相对于父块居中显示。请注意,这只是一个简单的示例,实际情况中可能需要根据具体需求进行调整。

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

相关·内容

前端知识点总结(html+css)(上)

文章分为上(html,css)中(js)下(vue)三部分。 html篇 html应该是前端中最简单知识点了,标签用着用着就熟记于心,在面试过程中对html提问更是少之又少,话不多说,上干货。...高度塌陷 原因 很多情况盒子不方便给高度,子盒子浮动脱离文档流不占位置,使盒子高度为0 解决方案 在浮动元素末尾加一个空标签,设clear:both 级添加overflow:hidden 使用...px和em区别是什么 px和em都是长度单位,两者区别是:px值是固定,指定为多少就是多少,计算比较容易;em值不是固定,是相对于容器字体大小,并且em会继承级元素字体大小。...与em对应另一个长度单位是rem,是指相对于根元素(通常是HTML元素)字体大小。...不定高::flex,子:margin:auto,0 不定高::flex,align-items: center 水平垂直居中 子元素为级元素::flex,子:margin:auto

25410

前端面试之HTML && CSS

绝对定位 absolute: 绝对定位元素位置相对于最近已定位元素,如果元素没有已定位元素,那 么它位置相对于。absolute 定位使元素位置与文档流无关,因此不占据空间。...值不为visible BFC使用场景 去除边距重叠现象 清除浮动(让元素高度包含子浮动元素) 避免某元素浮动元素覆盖 避免多列布局由于宽度计算四舍五入而自动换行 让一个元素水平垂直居中 水平居中...margin实现自适应居中 弹性布局 flex :级设置display: flex; 子级设置margin为auto实现自适应居中 级设置相对定位,子级设置绝对定位,并且通过位移 transform...直观理解,我们可能会认为子元素百分比完全相对于直接元素,height 百分比相 对于 height,width 百分比相对于 width。...缺点: (1)计算困难 (2)各个属性中如果使用百分比,相对元素属性并不是唯一。造成我们使用百分比单位容易使布局问题变得复杂。

4.4K10

CSS布局(二) 盒子模型属性

百分比值都是相对于包含宽度决定,常常用于移动端头图  外边距margin 设置外边距margin会在元素外创建额外空白,空白通常指不能放其他元素区域,而且在这个区域中可以看到元素背景...margin   初始值: 未定义   应用于: 所有元素   百分数: 相对于包含width [注意]对于普通元素来说,包含就是级元素,对于定位元素来说,包含是定位级。...所以,普通元素margin百分比相对于级元素width,定位元素margin百分比相对于定位width margin可以设置为负值,margin和宽高支持auto,以及margin具有非常奇怪重叠特性...【为什么margin:auto无法实现垂直居中】   水平方向可以居中是因为级元素宽度默认是撑满级元素,如果给宽度设置一个固定值,而左右margin设置为auto,则可以平分剩余空间   垂直方向不可以居中是因为级元素高度默认是内容高度...,与级元素高度并没有直接关系,而上下margin设置为auto,则重置为0 margin: 0 auto; 【为什么图片使用margin:auto不能水平居中】   图片无法水平居中,类似于级元素无法垂直居中

1.9K70

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

;淡紫色是子级,相对于居中。...定宽级元素水平居中(方法一) 对于定宽级元素实现水平居中,最简单一种方式就是 margin: 0 auto;,但是值得注意是一定需要设置宽度。...定位实现水平垂直居中方案(一) 步骤如下: 使子元素相对于容器元素定位 子元素开启绝对定位 设置该元素偏移量,值为50% 减去宽度/高度一半 实现CSS代码如下: .parent { /* 1....定位实现水平垂直居中方案(二) 步骤如下: 使子元素相对于容器元素定位 子元素开启绝对定位 设置该元素偏移量,值为50% 通过外边距-值方式将元素移动回去 实现CSS代码如下: .parent {...定位实现水平垂直居中方案(四) 步骤如下: 使子元素相对于容器元素定位 子元素开启绝对定位 设置该元素偏移量,值为50% 通过 translate 反向偏移方式,实现居中 实现 CSS 代码如下:

4K30

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

;淡紫色是子级,相对于居中。...定宽级元素水平居中(方法一) 对于定宽级元素实现水平居中,最简单一种方式就是 margin: 0 auto;,但是值得注意是一定需要设置宽度。...定位实现水平垂直居中方案(一) 步骤如下: 使子元素相对于容器元素定位 子元素开启绝对定位 设置该元素偏移量,值为50% 减去宽度/高度一半 实现CSS代码如下: .parent { /* 1....定位实现水平垂直居中方案(二) 步骤如下: 使子元素相对于容器元素定位 子元素开启绝对定位 设置该元素偏移量,值为50% 通过外边距-值方式将元素移动回去 实现CSS代码如下: .parent {...定位实现水平垂直居中方案(四) 步骤如下: 使子元素相对于容器元素定位 子元素开启绝对定位 设置该元素偏移量,值为50% 通过 translate 反向偏移方式,实现居中 实现 CSS 代码如下:

4K30

前端学习笔记—CSS

学习路线 元素,行内元素,行内元素定义 盒子模型 文本操作 文本垂直操作:vertical-align使用图示。middle设置居中。...2.给一个固定宽高级元素左右margin-left,margin-right设置auto可以实现该元素在其父容器里面水平左右居中,反之设置竖直方向margin则竖直方向居中。...解决方法见文章下方浮动解析,如设置元素清除浮动 设置float浮动后元素不会出现内部子元素上下margin合并问题,也可以清除第一个子元素上边距和最后一个子元素下边距元素剥夺问题 内容溢出问题...;行内元素设置span宽高可以生效 绝对定位和固定定位margin居中方式,在设置了宽高后,可以居中。...不设置宽高,则充满容器。 transform: translateX(-50%);平移居中方式,不用设置宽高。

9910

寒假提升 | Day6 CSS 第四部分

传递 如果级元素顶部线和元素顶部线重叠,那么这个级元素 margin-top 值会传递给元素 margin-bottom传递 如果级元素底部线和元素底部线重写,并且元素高度是...auto ,那么这个级元素 margin-bottom 值会传递给元素 如何防止出现传递问题?...只设置其中一个元素margin 上下margin折叠情况 级元素居中 在一些需求中,需要元素在元素中水平居中显示(元素一般都是级元素、inline-block) 行内级元素(包括 inline-block...元素) 水平居中:在元素中设置 text-align: center 级元素 水平居中:margin: 0 auto 1.2. outline outline 表示元素外轮廓 不占用空间 默认...水平居中 元素水平居中方案 在一些需求中,需要元素在元素中水平居中显示(元素一般都是级元素、inline-block) 行内级元素(包括 inline-block元素) 水平居中:在元素中设置

1.3K20

2021前端面试高频 HTML + CSS

行内元素 与 级元素 ❝在 HTML4 中,元素分为两大类:inline 行内元素 和 block 级元素 「行内元素」: 一个 行内元素只占据它自身空间大小。...常见行内元素有: a b span img button input label select textarea 「级元素:」 级元素占据容器整个宽度。...对语义化理解 ❝ 它使页面内容结构化,结构更清晰,便于浏览器,搜索引擎解析。 有利于网站SEO 优化排名。 ❞ 12....定位流 绝对定位方案,盒从常规流中被移除,不影响常规流布局; 它定位相对于包含,相关CSS属性:top、bottom、left、right; 如果元素属性position为absolute...如当前对行内文本字体尺寸未被人为设置,则相对于浏览器默认字体尺寸. . em值并不是固定; . em会继承级元素字体大小。

91140

HTML & CSS页面布局之定位

c) absolute 绝对定位,元素脱离标准流,浏览器把它视作级元素,不论定位之前它是何种元素,其他元素也将无视它。绝对定位偏移量是相对于其有定位属性第一个祖先元素。...这才是设计浮动初衷。 元素浮动后会带来两个问题,第一个是造成元素高度塌陷,padding和margin无效。第二个是其他元素无视,出现元素相互覆盖现象。...居中与flex 1,水平居中 如果元素是文本、图片等行内元素,在元素中设置text-align:center即可实现行内元素水平居中,如果子元素是不定宽级元素,将子元素display设置为inline-block...,使子元素变成行内元素,可以实现级元素水平居中。...; } /*这样实现垂直居中原理是:使元素以表格形式呈现,再利用vertical-align属性在表格中是设置单元格内容垂直对齐方式特性,从而达到级元素垂直居中效果。

5.4K10

前端无法让我冷静

行内标签和标签有哪些以及都有什么特点 标签 每一个属性标签都是从新一行开始,而且之后元素也都会从新一行开始 可以设置宽度、高度,行高,距顶部距离,距底部距离 属性标签宽度假如不做设置,会直接默认为元素宽度... 标签创建引用图像占位空间。 HTML 与 XHTML 之间差异 在 HTML 中, 标签没有结束标签。 在 XHTML 中, 标签必须正确地关闭。...简单讲就是让一个函数无法在短时间内连续调用,只有当上一次函数执行后过了规定时间间隔,才能进行下一次该函数调用。 实现一个响应式正方形 倒计时怎么做?...像素px是相对于显示器屏幕分辨率而言 EM em是相对长度单位。相对于当前对象内文本字体尺寸。 rem是CSS3新增一个相对单位(root em,根em),这个单位引起了广泛关注。...在函数传递后, 如果使用了箭头函数, this 最终将指向其定义处上下文 this 对象。

2.4K40

大型编程电视剧连载 | CSS知识点硬核整理归纳(二)

属性 作用 margin-left 左外边距 margin-right 右外边距 margin-top 上外边距 margin-bottom 下外边距 5.4.1、级盒子水平居中 可以让一个级盒子实现水平居中必须...} 5.4.2、文字居中和盒子居中区别 盒子内文字水平居中是 text-align: center, 而且还可以让 行内元素和行内居中对齐 级盒子水平居中 左右margin 改为 auto text-align...: center; /* 文字 行内元素 行内元素水平居中 */ margin: 10px auto; /* 级盒子水平居中 左右margin 改为 auto 就阔以了 上下margin都可以...5.4.5.2、 嵌套元素垂直外边距合并 对于两个嵌套关系元素,如果元素没有上内边距及边框,元素上外边距会与子元素上外边距发生合并,合并后外边距为两者中较大者。 ?...不能 基本单独使用 绝对定位absolute 完全脱标,不占有位置 相对于定位级移动位置 能 要和定位级元素搭配使用 固定定位fixed 完全脱标,不占有位置 相对于浏览器移动位置 能 单独使用,

1.8K20

2020前端面试题含解析汇总——基础篇(二)

来看一种情况,设置position:absolute,如果元素是,不管元素是否开启定位,绝对定位会相对于当前页面;如果元素不是,并且开启定位的话,绝对定位会相对于元素 运行结果(红相对于页面的黄绝对定位): 对比来看 <!...补充第45点,设置水平居中方法,如果是行内元素中文字,text-align必须设置在元素才有效。...:center,级行内元素有text-align:center,则子级元素文字还是居中!...,上面的黄色区域就是水平居中,这个也比较特殊,水平居中并不针对文字 还是补充第45点:宽度固定时候,margin: 0 auto;可以水平居中,但是如果元素高度固定了,怎么同时设置垂直居中呢?

17510

css样式—字体垂直、水平居中

这个属性只能作用于元素(或者CSS控制为元素内联元素,但是被控制为内联元素元素是不行)。一句话来说,就是要拥有元素特点那些元素。...但是子元素中文字居中,是在子div中居中,而不是对于div居中。也就是,它里面所有的文字,都会相对于最靠近自己一层div来实现居中。所以,这个属性不能用于div在div中整体居中。...一般情况下,可以设置margin:0 auto;这会使这个级元素在它级元素中居中,上下左右都会居中。   ...只要具有行内元素特性元素使用这个属性,对它子元素中文字和图片也是起作用。但是作用效果为使得文字或者图片相对于紧靠着它们元素来进行居中。这个和text-align上面说过部分是类似的。...7 级元素自身垂直居中   设置级元素自身在元素中垂直居中,可以参照级元素水平居中方法(上面说过),设置外边距即可。如果不想设置水平居中,只要设置上下外边距为auto就好。

4.1K100

前端

行内标签和标签有哪些以及都有什么特点 标签 每一个属性标签都是从新一行开始,而且之后元素也都会从新一行开始 可以设置宽度、高度,行高,距顶部距离,距底部距离 属性标签宽度假如不做设置...,会直接默认为元素宽度100% 属性标签是可以直接嵌套 p标签中不能嵌套div标签 、、…、、、、、 标签创建引用图像占位空间。 HTML 与 XHTML 之间差异 在 HTML 中, 标签没有结束标签。 在 XHTML 中, 标签必须正确地关闭。...简单讲就是让一个函数无法在短时间内连续调用,只有当上一次函数执行后过了规定时间间隔,才能进行下一次该函数调用。 ? image.png 实现一个响应式正方形 ?...绝对定位:该元素相对于其父元素 相对定位:该元素相对于自己原有位置,偏移一定距离。

1.9K41

2020 年「我与技术面试那些事儿」

使结构,样式,行为分离,内容能够更多设备访问,代码简洁,开发组件化,代码易维护,可复用等)。 2.HTML是一种基于web网页设计语言;XHTML是一种基于XML,语法严格,标准设计语言。...3.每次写浮动元素,会引起元素高度无法撑开,影响与元素同级元素;与元素同级非浮动元素会紧随其后,会类似于遮盖现象,这里注意如果一个元素浮动,那它前面的元素也是需要浮动,不然会影响页面显示结构...当面试官问如何解决呢,首先第一个就是 可以为元素设置 固定高度;第二可以为元素设置overflow:hidden即可清除浮动,让元素高度撑开;第三可以使用clear:both样式属性清除元素浮动...14.聊聊rem和em:rem表示相对于根元素字体大小;em表示相对于元素字体大小。...15.css中,自适应单位百分比%,相对于视口宽度单位vw,相对于视口高度单位vh,相对于视口宽度或者高度单位vm。 相对于元素字体大小单位em,相对于根元素字体大小单位rem。

1.2K20

【云+社区年度征文】全年技术盘点与总结(含小程序开发)

标签要闭合,英文要小写,不要嵌套混乱,用标签语义化来提高搜索概率,使用外链式CSS和JS。(使结构,样式,行为分离,内容能够更多设备访问,代码简洁,开发组件化,代码易维护,可复用等)。...3.每次写浮动元素,会引起元素高度无法撑开,影响与元素同级元素;与元素同级非浮动元素会紧随其后,会类似于遮盖现象,这里注意如果一个元素浮动,那它前面的元素也是需要浮动,不然会影响页面显示结构...当面试官问如何解决呢,首先第一个就是 可以为元素设置 固定高度;第二可以为元素设置overflow:hidden即可清除浮动,让元素高度撑开;第三可以使用clear:both样式属性清除元素浮动...14.聊聊rem和em:rem表示相对于根元素字体大小;em表示相对于元素字体大小。...15.css中,自适应单位百分比%,相对于视口宽度单位vw,相对于视口高度单位vh,相对于视口宽度或者高度单位vm。 相对于元素字体大小单位em,相对于根元素字体大小单位rem。

1.7K341

前端-彻底学会CSS布局-这是最全

然而,早年给我们称呼却是页面仔。或许是职责越来越大,整体前端井喷式发展,使我们只关注了js,而疏远了css和html。 其实,我们可能经常在聊组件化,咋地咋地。...所以,我们布局应该从定位和尺寸开始聊起 定位 定位概念就是它允许你定义一个元素相对于其他正常元素位置,它应该出现在哪里,这里其他元素可以是元素,另一个元素甚至是浏览器窗口本身。...3、absolute:元素框不再占有文档流位置,并且相对于包含进行偏移(所谓包含就是最近一级外层元素position不为static元素) 4、fixed:元素框不再占有文档流位置,并且相对于视窗进行定位...:它虽然也是一个相对单位,相对于元素font-size,但是,并不常用,主要是计算太麻烦了。...相信如果考察居中时,水平居中你可能闭着眼睛都能写出来,但是垂直居中却绕着脑袋想。这是因为如果是级元素水平居中只要将水平方向上margin设置成auto就可以了。

1K20

一点点css基础原理总结0.前言1.包含(CB)2.宽和高3.BFC4.行内元素5. 垂直方向margin6.盒子模型

所以,我们平时width100%就是占满全部,auto就是占满剩下内容,而height100%有时候设置了也没有用。 height没用时候,因为他元素是0或者默认是0。...这样子,我们也可以知道为什么margin auto能居中了: 首先,先要知道宽高,既然已经知道了宽高,那margin就可以反推出来值是多少,auto会平分剩下(两边margin=行宽-width)。...所以我们可以得出一个条件:居中时候,outerHeigth=(CB或者ICB)高。...如何居中呢,显然是top或者bottom为0,这样子margin盒子边界和元素(CB或者ICB)重叠 3.BFC 级盒子形成BFC条件: 1.浮动元素 2.绝对定位元素 3.非级盒子级容器(...为table-cell时候,可以利用vertical-align控制内部子元素垂直居中(无论行级元素还是级元素) 对于级包含文本行高,比如p标签嵌套一些文字情况,默认是normal。

70120

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券