Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 在页面中部设置“div >块的位置,并自动调整其高度。 我想做一个宽度为100%的块,把它的位置放在页面的水平和垂直中心的中间,但是没有设置一个确切的高度数字,因为我不知道高度的确切数目。_Html_Css - Fatal编程技术网

Html 在页面中部设置“div >块的位置,并自动调整其高度。 我想做一个宽度为100%的块,把它的位置放在页面的水平和垂直中心的中间,但是没有设置一个确切的高度数字,因为我不知道高度的确切数目。

Html 在页面中部设置“div >块的位置,并自动调整其高度。 我想做一个宽度为100%的块,把它的位置放在页面的水平和垂直中心的中间,但是没有设置一个确切的高度数字,因为我不知道高度的确切数目。,html,css,Html,Css,这是我的密码: 内容{ 位置:绝对位置; 排名:0; 左:0; 右:0; 底部:0; 保证金:自动; 文本对齐:居中; 宽度:100%; 背景:rgba255,0,0,0.5; } 你好,世界! 您可以使用transform:translateY-50%;顶部:50%,无需指定任何高度 身体{ 保证金:0; } 内容{ 位置:绝对位置; 最高:50%; 左:0; 右:0; 文本对齐:居中; 背景:rgba255,0,0,0.5; 转化:translateY-50%; } 你好,世界! 内容

这是我的密码:

内容{ 位置:绝对位置; 排名:0; 左:0; 右:0; 底部:0; 保证金:自动; 文本对齐:居中; 宽度:100%; 背景:rgba255,0,0,0.5; } 你好,世界! 您可以使用transform:translateY-50%;顶部:50%,无需指定任何高度

身体{ 保证金:0; } 内容{ 位置:绝对位置; 最高:50%; 左:0; 右:0; 文本对齐:居中; 背景:rgba255,0,0,0.5; 转化:translateY-50%; } 你好,世界! 内容{ 位置:绝对位置; 最高:50%; 左:0; 右:0; 文本对齐:居中; 宽度:100%; 背景:rgba255,0,0,0.5; 转化率:trranslateY-50%; 文本对齐:左对齐; } 你好,世界!很简单

只需将transform属性设置为在垂直中心定位时减去div高度的50%

位置将根据div的当前高度自动调整


您可以简单地使用css属性=

#content {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: auto;
text-align: center;
width: 100%;
background: rgba(255, 0, 0, 0.5);

/******Just Add one line in css its help you******************/

height: auto;
}

弹性箱就是这样

这是工作票

PS:如果您可以使用其他属性来避免位置:绝对

内容{ 文本对齐:居中; 宽度:100%; 背景:rgba255,0,0,0.5; } 身体{ 显示器:flex; 对齐项目:居中; 最小高度:100vh; } 你好,世界 使用此css样式:

body{
margin:auto;
}
#content {
position: absolute;
text-align: center;
width: 100%;
background: rgba(255, 0, 0, 0.5);
top: calc(50% - 50px);
}

这就是你想要的吗?此解决方案不兼容跨浏览器。请看我的答案:这与您的想法相同。@BartBurg检查所有最新的浏览器支持transform,旧浏览器也支持带有供应商前缀的transform。今后对它的支持也将增加。我们使用表格和表格单元格布局进行对齐的日子已经一去不复返了。我想你是对的,我们最近确实遇到了一些问题,但可能是早期IE浏览器的问题。
body{
margin:auto;
}
#content {
position: absolute;
text-align: center;
width: 100%;
background: rgba(255, 0, 0, 0.5);
top: calc(50% - 50px);
}
<html>
<head>
<meta charset="ISO-8859-1">
<title>Insert title here</title>

<style>
#content {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  text-align: center;
  width: 100%;
  height:5%;
  background: rgba(255, 0, 0, 0.5);
}</style>
</head>
 <body>
    <div id="content" style="background-color:rgba(255, 0, 0, 0.5)">Hello world!</div>
  </body>