gpt4 book ai didi

javascript - 当父级显示 : block; 时,将子级
在父级
中垂直居中

转载 作者:太空宇宙 更新时间:2023-11-04 08:58:35 24 4
gpt4 key购买 nike

我正在尝试将具有 contenteditable 的子 div 垂直居中,以便用户可以在父 div 的中间键入内容,因此文本需要垂直居中。

父 div 必须将它的显示设置为 block 因为我需要它的顶部和底部边框具有它的容器的最大高度,因为它将被选中调整大小事件。

我尝试过很多方法,例如 flexbox 和垂直对齐,但它们都需要我更改父级的显示属性,我看不到任何方法。如果它有效并且不太麻烦,我什至会接受 JS 解决方案。

div {
border: 1px solid black;
max-width: 100px;
outline: none;
}

.parent {
display: block;
padding: 0;
margin: 0;
width: 100%;
height: 300px;

}

.child {
display: table-cell;
height: 100%;
width: 100%;
max-width: 80px;
padding: 10px;
overflow: hidden;
vertical-align: middle;
text-align: center;
white-space: pre-wrap;
word-wrap: break-word;
}
<div class="parent" align="center">

<div contenteditable=true class="child">
</div>

</div>

最佳答案

一种方法是使用这些 CSS 规则:

.parent {
display: block;
width: 100%;
height: 300px;
position: relative;
}

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

查看完整解决方案: http://codepen.io/shippin/pen/yMKMpR

另请注意,您的 html 中存在一些问题:

  • contenteditable="true"上缺少引号
  • HTML5 不支持对齐属性。

关于javascript - 当父级显示 : block; 时,将子级 <div> 在父级 <div> 中垂直居中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42934841/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com