CSS对齐表单元素

时间:2018-02-01 21:42:59

标签: css forms flexbox alignment elements

我试图解决这个问题:

enter image description here

进入这个:

enter image description here

这是我的HTML代码:

<main class="container">
    <section class="new-tweet">
        <h2>Compose Tweet</h2>
        <form method="POST" action="/tweets">
            <textarea name="text" placeholder="What are you humming about?"></textarea>
            <input type="submit" value="Tweet">
            <span class="counter">140</span>
        </form>
    </section>
</main>

这是我的CSS

.new-tweet {
    flex-direction: column;
    display: flex;
    background-color: #ececec;
    border-radius: 5px;
    border-color: #bdbdbd;
    border-style: solid;
    border-width: 1px;
    padding: 0.5em;
}

.new-tweet h2 {
    margin-top: 0;
    border-bottom: solid #4a4747 2.2px;
}

.new-tweet input {
     width: 100px;
     float: left;
     padding: 10px 20px;
}

看起来这是网格有用的东西,但任何建议都会受到赞赏。

2 个答案:

答案 0 :(得分:0)

首先,更正HTML并添加div以在表单中包含<input><span>

<div class="inside">            
    <input value="Tweet" type="submit"> 
    <span class="counter">140</span>
</div>

之后,在CSS中写下这个:

.form {
display:contents;
}

span {
margin-top:15px;
}

答案 1 :(得分:0)

我手动改变了宽度。现在一切都很好。