2017-08-10 45 views
0

如何在屏幕/父div的中心设置div,并将其固定,这会在放置在中心后忽略宽度更改?我有一个包含一个表一个div,它看起来像这样: enter image description here 我不知道外层的div是否有必要或没有。我希望我的桌子放在中间位置并固定,它会忽略其宽度变化。下面的结果是什么,我得到:enter image description here 正如你可以看到,该表向左移动时,其大小的变化留在中心的表,我想避免这种情况,任何想法? 这是我到目前为止有:设置div中心并将其固定

.main 
{ 
    position: relative; 
    width: 600px; 
    left: calc(50% - 300px); 
    border: 1px solid #000; 
} 
.table 
{ 
    margin: 0 auto; 
} 

<div class="main"> 
    <table class="table"> 
    <tr><td>Username: </td><td><input type="text"></td><td>ErrorMessage</td></tr> 
    <tr><td>Password: </td><td><input type="text"></td><td>ErrorMessage</td></tr> 
    </table> 
</div> 
+0

虽然屏幕截图有助于向我们展示问题所在,但如果没有您的标记和样式,我们的手就会受到限制。你可以在你的问题中加入MCVE吗?另外...从你的问题描述来看,在错误信息上使用绝对定位将会解决布局问题。而且你不应该使用表格进行布局,你知道。 – Terry

+0

可能重复的[如何在div中绝对定位的元素居中?](https://stackoverflow.com/questions/1776915/how-to-center-absolutely-positioned-element-in-div) –

+0

您可以尝试使用text- align:你的父元素中心 – Aayushi

回答

0

尝试使用div这里面的风格,它为我工作,你可以使用说明文字,而不是他们的表内。

<div style="text-align:center"> 
    <input/><br/><input/><br/><button/> 
</div> 
-1

取下。表 margin: 0 auto;,并把这个线 '。表{ 位置:相对; 左:45%;

}`

0

更改你的位置固定

position:fixed; 

,并重新调整其他的div可能已重新安排与顶部底部左,右

0

为什么一表多用非专业退房手续?表应该用于数据输出或HTML电子邮件(纠正我,如果我错了,但这是我所知道的)。

您也可以使用此代码来垂直和水平中心的特定元素(请记住,这是绝对的,但请随时玩弄此):

position: absolute; 
top: 50%; 
left: 50%; 
transform: translate(-50%,-50%); 

关于你想要的错误事实消息不会造成表单的宽度。我会建议使用绝对位置。

我写了一个例子给你看https://jsfiddle.net/bdwte97g/ 希望这会有所帮助。