我正在尝试制作具有以下属性的响应式标题/导航表单:
我使用this JS fiddle作为表单的起点,将标签分成小宽度的单独一行,并成功使其工作,并使标签在小视口处的输入上方居中好。
到目前为止,我的代码是
form > div {
clear: both;
overflow: hidden;
padding: 1px;
margin: 0 0 10px 0;
}
form > div > fieldset > div > div {
margin: 0 0 5px 0;
}
form > div > label,
legend {
width: 25%;
float: left;
padding-right: 10px;
text-align: right;
vertical-align: center;
}
form > div > div,
form > div > fieldset > div {
width: 75%;
float: right;
}
form > div > fieldset label {
font-size: 90%;
}
fieldset {
border: 0;
padding: 0;
}
@media (max-width: 600px) {
form > div {
margin: 0 0 15px 0;
}
form > div > label,
legend {
width: 100%;
float: none;
margin: 0 0 5px 0;
text-align: center;
}
form > div > div,
form > div > fieldset > div {
width: 100%;
float: none;
}
input[type=text],
input[type=numeric],
textarea,
select {
width: 100%;
}
}
<header class="page-header row center-block">
<div class="center-xs">
<form class="main-form input-group" action="/caulcuate" method="post">
<label for="number" class="control-label"><h1 class="h1">BIG Label Header</h1></label>
<input type="number" name="number" min="10" max="6856" step="1" id="number" class="main-input"
placeholder="number goes here" required autofocus>
<span class="input-group-btn">
<button id="calculate" class="btn btn-lg btn-primary" type="submit">
100?
</button>
</span>
</form>
</div>
</header>
<header class="page-header">
<form action="#">
<div>
<label class="desc" id="title1" for="numberhere"><h1>BIG Label Header</h1></label>
<div>
<input type="number" name="numberhere" min="10" max="6856" step="1" id="numberhere" class="main-input"
placeholder="number goes here" required autofocus>
<!--<span class="input-group-btn">-->
<button id="calculate" class="btn btn-lg btn-primary" type="submit">
100?
</button>
<!--</span>-->
</div>
</div>
</form>
</header>
<span>
,因为它总是将按钮放在一个单独的行上。<div>
并且他们的课程很聪明,我最终会得到一些正常的东西,但可能会很脆弱。<header>
并将它们包装在一对<div>
中并使用@media
查询来更改<div>
是可见的。这似乎不如使用大量嵌套标签那么脆弱,但也需要一些代码重复。但是,到目前为止它似乎可能是最简单的选择。<div>
之间有些相关,我想可能有一些jQuery方法可以做到这一点,在这种情况下,CSS目前可能是错误的工具。P.S。我希望我对矢量插图有更多的了解,所以我可以举出一个确切的例子来说明我没有所有描述性文字。