表单元素对齐问题解决方案

之前一直困扰自己的一个问题就是表单内radio、select等的对齐问题,一直以来,都是给提示添加label,然后跟radio等一起浮动,然后再设置margin解决的,但是这样又得另外解决IE6下的双边距问题,搞得自己相当恼。今天终于花了些时间找到了好的解决方法。在此罗列罗列,也希望能够帮到跟我同样闻form色变的人。

先上解决方法吧:
提示文字须添加label标签,然后样式表里定义input,select,label{vertical-align:middle;}
eg.<label for=”bike”>自行车:</label><input type=”checkbox” name=”Bike” id=”bike”> //label加for纯属个人习惯
其实这里,未必要用label标签,只要是行内元素都可以,不过想加上“for”的话,就非它不可了。
最终效果:

发现网上有很多人说,并且正在看的你也有可能会说:为什么我HTML里这样写<p>自行车:<input type=”checkbox” name=”Bike” id=”bike”></p>,并且给input添加了属性vertical-align:middle;却无效呢?我想告诉你,还是仔细看相关使用文档的好。
vertical-align的定义是这样的:该属性定义行内元素的基线相对于该元素所在行的基线的垂直对齐。
所以,只要你给“自行车”添加行内标签,就可以解决这个问题了。

posted @ 2012-12-06 10:29  gamgam  阅读(1136)  评论(0编辑  收藏  举报