繁体   English   中英

居中2选择控件在div中水平和垂直

[英]Centre 2 select controls horizontally and vertically within a div

我目前有以下。 控件垂直放置在彼此的顶部上-最简单的方法是使这些控件水平并排放置并且都位于div元素的中央?

 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8"> <title>center controls</title> <!-- <link rel="Stylesheet" href="styles.css" type="text/css" /> --> <style media="screen" type="text/css"> #dropDownDiv { position: absolute; border: 2px solid #73AD21; left: 150px; top: 15px; width: 300px; height: 35px; } select { display: block; margin: 0 auto; } </style> </head> <body> <div id="dropDownDiv"> <select id="opt1"> <option value=1>Option 1</option> <option value=2>Option 2</option> <option value=3>Option 3</option> </select> <select id="opt2"> <option value=1>Option 1</option> <option value=2>Option 2</option> <option value=3>Option 3</option> </select> </div> </body> </html> 

您可以将select元素设置为inline-block而不是block并且text-align其容器的text-align设置为center

 select { display: inline-block; margin: 9.5px 0 0 0; padding: 0; } #dropDownDiv { text-align: center; position: absolute; border: 2px solid #73AD21; left: 150px; top: 15px; width: 300px; height: 35px; } 
 <div id="dropDownDiv"> <select id="opt1"> <option value=1>Option 1</option> <option value=2>Option 2</option> <option value=3>Option 3</option> </select><select id="opt2"> <option value=1>Option 1</option> <option value=2>Option 2</option> <option value=3>Option 3</option> </select> </div> 

您可以只删除select{display: block;}部分,然后按Dekel所说的#dropDownDiv进行定位。

display: block; 本质上意味着:将元素放在新行中。 只是让你知道。 我花了两年时间才学会它;)它具有其他功能,但是您可以阅读它们。

看一下这个: https ://codepen.io/anon/pen/PKVrEG我从上面的链接中使用了flexbox。 网格给了我一些奇怪的结果,所有您需要做的就是将这3行添加到#dropDownDiv样式中

  display: flex;
  justify-content: center;
  align-items: center;

这也适用于大小未知的子元素。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM