【发布时间】:2017-02-16 21:36:40
【问题描述】:
我在搜索表单中有这些字段……
<form id="search-form" action="/events/search" accept-charset="UTF-8" method="get"><input name="utf8" type="hidden" value="✓">
<input type="text" name="first_name" id="first_name" placeholder="First Name" class="searchField">
<input type="text" name="last_name" id="last_name" placeholder="Last Name" class="searchField">
<input type="text" name="event" id="event" placeholder="Event" class="searchField">
<input alt="Search" type="image" src="http://www.racertracks.com/assets/magnifying-glass-0220f37269f90a370c3bb60229240f2ef2a4e15b335cd42e64563ba65e4f22e4.png" class="search_button">
</form>
那么我有这种样式的表单......
#search-form {
display: flex;
flex: 1 0 auto;
}
问题是,元素紧挨着出现——https://jsfiddle.net/fmy1syfw/。我希望它们之间至少有一个像素的空间,以免让一切看起来如此狭窄。我已经尝试添加
margin: 1px;
到上面的风格,但无济于事。如何在我的元素之间添加一个像素空间而不破坏表单在不同屏幕宽度下的行为?
【问题讨论】:
-
给
#search-form input { }留边距...jsfiddle.net/fmy1syfw/1 -
不幸的是,这破坏了一切。用你的 Fiddle 将屏幕压缩到小于 680 像素,并将其与压缩我的小于 680 像素进行比较。事情不再一样了。
-
那是因为你设置的是固定宽度,你可以用flex-grow代替jsfiddle.net/fmy1syfw/3
-
对 flex 值、最大宽度和边距进行了一些修复,这是否是预期的结果:jsfiddle.net/fmy1syfw/5 或 jsfiddle.net/fmy1syfw/6
标签: html css flexbox margin display