我正在设计一个文本字段,我希望它显示在div的中间位置。我希望黑色div显示为蓝色(id=srch
)div的垂直中心。
HTML& CSS:
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
<style type="text/css">
* {
vertical-align:baseline;
font-weight: inherit;
font-family: inherit;
font-style: inherit;
font-size: 100%;
border:0 none;
outline:0;
padding:0;
margin:0;
}
html {
height:100%;
}
#outerwrapper {
width: 90%;
height: 100%;
min-height: 100%;
height: auto !important;
border: solid thin #333;
}
body {
height: 100%;
width: 100%;
}
#header {
height: 80px;
width: 100%;
background-color:#999;
}
input {
border:solid thin #ab1;
}
#srch{
height:50px;
background-color:#00f;
}
#srch div{
margin: auto 0 auto 0;
width: 200px;
background-color: #000;
}
#contentWrapper {
width: 100%;
overflow: auto;
background-color:#0F0
}
</style>
</head>
<body>
<div id="outerwrapper">
<div id="header">Header
<div id="srch">
<div>
<input type="tel" name="aa"/>
</div>
</div>
</div>
<div id="contentWrapper">
Content Wrapper
</div>
</div>
</body>
</html>
我的方法:我给黑色div顶部和底部边距自动但它不起作用(也适用于水平中心[左右margin:auto
]它正在工作)。 margin:auto
仅适用于左派和右派吗?
我想知道为什么会这样,我不想要任何其他解决方案,如:
答案 0 :(得分:2)
margin: auto
不适用于顶部和底部。如果指定了margin-top: auto
或margin-bottom: auto
,则their used value is 0。这是一个article about how you can achieve vertical centering。
答案 1 :(得分:1)
你需要在这里使用一些jQuery来计算父容器的高度。