首页 > 解决方案 > 将页面上的联系表单与并排文本和输入字段居中对齐?[更新]

问题描述

编辑:我已经更新了 CSS 和 html。我已经弄清楚了居中,但仍然无法对齐标签和字段。我需要将输入字段和标签对齐到它们的中心有一条完美的线,基本上将它们分开,因为标签彼此堆叠,输入字段彼此堆叠。下面的代码已经类似于我希望它的外观,除了表单位于左边缘并且我的标签和输入字段没有完美排列。

到目前为止,这是我的表格:

<div style="text-align:center">
            <form>
                <div>
                    Name: <input type="text" name="Name" size="40"/>
                    <br/>
                    <br/>
                </div>
                <div>
                    Address: <input type="text" name="Address" size="50"/>
                    <br/>
                    <br/>
                </div>
                <div>
                    City: <input type="text" name="City" size="25"/>
                    <br/>
                    <br/>
                </div>
                <div>
                    State: <input type="text" name="State" size="25"/>
                    <br/>
                    <br/>
                </div>
                <div>
                    Zip: <input type="text" name="Zip" size="25"/>
                    <br/>
                    <br/>
                </div>
                <div>
                    Email: <input type="text" name="Email" size="40"/>
                    <br/>
                    <br/>
                </div>
                <div>
                    Subscribe to our mailing list?
                    <br/>
                    <input type="radio" name="AddToList" value="yes" checked="checked" />Yes
                    <input type="radio" name="AddToList" value="no" />No
                    <br/>
                    <br/>
                </div>
                <div>
                    Comments:<br/>
                    <textarea name="comments" cols="70" rows="10" placeholder="Expected value of input"></textarea>
                    <br/>
                    <br/>
                    <input type="submit" />
                    <input type="reset" />
                </div>
            </form>
        </div>

到目前为止,我为这个表单提供的唯一 CSS 是:

form {
display: inline-block;
margin-left: auto;
margin-right: auto;
text-align: left;
} 

这就是我想要完成的: 在此处输入图像描述

任何帮助或建议都会非常感激和高度赞赏,我真的对此感到目瞪口呆。我尝试对表格使用一些居中方法,但都没有奏效。

标签: htmlformsalignment

解决方案


check this i just positioned it with css 

<!DOCTYPE html>
<html>
<head>
<title>index</title>
<style>label{
    position: relative;
    bottom: 2px;
}
input{
    position: relative;
    margin-top: 10px;
}

.text{
    display: flex;
    justify-content: center;
}

.text{
    display: flex;
    justify-content: center;
    
}

</style>

</head>

<body>
    <div style="text-align:center">
        <form>
            <div>
               
                <label> Name:</label>
                 <input type="text" name="Name" size="40"/>
                
            </div>
            <div>
                <label style="left:27px"> Address:</label>
                
                <input type="text" name="Address" size="50" style="left:27px;"/>
                
            </div>
            <div>
                <label style="right: 46px;">City: </label>
                <input type="text" name="City" size="25" style="right:46px;"/>
                
            </div>
            <div>
                <label style="right:48px">State:</label>
                 <input type="text" name="State" size="25"/ style="right: 49px;">
                
            </div>
            <div>
               <label style="right: 43px;"> Zip:</label> <input type="text" name="Zip" size="25" style="right: 44px;"/>
                
            </div>
            <div>
                
                <label style="bottom: 0px;" > Email:</label>
                 <input type="text" name="Email" size="40"/>
                
            </div>
            <div style="right: 180px; position: relative;" >
                <label>Subscribe to our mailing list?</label>
                
                <input type="radio" name="AddToList" value="yes" checked="checked" />Yes
                <input type="radio" name="AddToList" value="no" />No
                <br/>
                <br/>
            </div>
            <div class="text">
                <br>
                <br>
               <label style="top: 60px; left: 70px;"> Comments: </label>
                <textarea name="comments" cols="70" rows="10" placeholder="Expected value of input" style="left: 84px;  position: relative;"></textarea>
                <br/>
                <br/>
              
            </div >
            <div class="submit" style="right: 80px; position: relative;">
            <input type="submit" width="" />
            <input type="reset" />
        </div >
        </form>
    </div>

    <script src="test.js"></script>
</body>
</html>


推荐阅读