How to align multiple input using css

为君一笑 提交于 2020-01-25 03:40:06

问题


i'm trying to realize a simple login page and i need to align some input text:

this is my css:

    body {
        background-image: url(image/bg.jpg); background-size: 100%;
    }

    .content{
        border: 1px solid gray;
        margin-top:180px;
        margin-left:380px;
        background-color: #464749;
        width:333px;
        height: 352px;
        padding: 58px 76px 0 76px;
        color: #ebebeb;
        font: 12px Arial, Helvetica, sans-serif;
    }
    span{
        display:block;  
        margin-left: 30px;
    }
    input{
        width: 205px;
        padding: 10px 4px 6px 3px;
        border: 1px solid #0d2c52;
        background-color:#1e4f8a;
        font-size: 16px;
    }
    .nameField{

        display:inline;
        width:80px;
        text-align: right;
        padding: 14px 10px 0 0;
        margin:0 0 7px 0;
    }
    .inputField{
        display:inline;
        width:230px;
        margin:0;
        margin:0 0 7px 0;
    }

This is my html :

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Login</title>
        <link rel="stylesheet" type="text/css" href="main.css" />
        <!-- Date: 2012-05-30 -->
    </head>
    <body>
        <div class="content">
            <h2>Login</h2>
            <span>
                <div class="nameField">
                Username: 
                </div>
                <div class="inputField">
                    <input type="text" name="username" size="30" maxlength="2048"/>
                </div>
            </span>
            <span><div class="nameField">
                Password: 
                </div>
                <div class="inputField"><input type="password" name="password" size="30" maxlength="2048"/>
                    </div>
            </span>
        </div>
    </body>
</html>

My output is:

How can i align that blue input text? can someone help me?? thanksssss


回答1:


Drop the width on the inputField class and change the display on the nameField and inputField classes from inline to inline-block.

jsFiddle example.

CSS:

.nameField{
    display:inline-block;
    width:80px;
    text-align: right;
    padding: 14px 10px 0 0;
    margin:0 0 7px 0;
}
.inputField{
    display:inline-block;
    width:130px;
    margin:0;
    margin:0 0 7px 0;
}​



回答2:


Change the display property for .nameField to inline-block.

Also, you don't need to use divs for everything. There is a perfectly good tag called label for labeling form fields.



来源:https://stackoverflow.com/questions/10822695/how-to-align-multiple-input-using-css

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!