CSS:标签右对齐,文本框左对齐的实现

90896F9318B27B4C9BB14B421C3AB437_490_301.jpg

前言   表单设计应该是网页设计中最常遇上的,而一般表单就包括说明文字即标签,以及对应的文本框、文本区域等表单元素。此时就经常遇到一个设计问题,左侧的标签该左对齐呢还是右对齐?其实各有好处,使用左对齐的表单设计能让人很容易一扫就看清楚所有标签内容,坏处就是标签文字有长有短,短的标签离右边的表单元素远了,给找到对应文本框带来不便。右对齐呢,右对齐可以使得标签和表单元素贴紧,坏处就是左边的标签显得参差不齐。此时有一种改进方法,就是表单比较长的话就分为几组,几个一组就不会很明显了,如开心网的设计:
01917659D7B2FEC4843A06ECBBE121FB_458_423.jpg
现在网上的情况是标签右对齐表单占据主流。那如何实现标签右对齐,表单元素左对齐呢?

探索   实现的方法有多种,我们先看一些主流网站使用的方法。

  1. 开心网。开心网使用的方法核心点是把标签设置为块级元素,设置相同宽度和文字右对齐,之后设置float:left ,右边的表单元素也同样设置左浮动。这样做的好处是避开绝对定位布局,让浮动来实现定位对齐。缺点呢,可能就是html的嵌套层次多了点:
    7380741D603B331F6160BCA883F2E013_457_169.jpg
    总的来说,开心网的实现方法还是很不错的,瑕不掩瑜;
  2. 人人网。人人网的方法和开心网大同小异,值得称赞的是它的html层次比较简洁。唯一比较特别是它使用 dl\dt\dd 作为标签:
    555C85CB633570C5DE10390E84C95A3C_500_104.jpg
    从html语义上来说也有点怪怪的,我试着去除样式,也不见得很特别:
    41237C916730DF89777C308CDA5DF004_421_118.jpg
  3. 腾讯微博注册页面。它用的是表格来布局,好处很显然,html代码和CSS代码的编写简单了很多,坏处也很明显,增加了一堆无语义标签同时加深了代码层次:
    6259BC6309107C05D29D42DFA55AA016_397_150.jpg

各个网站的实现各有优劣,但如果从减少嵌套层次和语义上说,没有很满足我要求的方法。于是我打算自己写。

实现  html部分。html部分从语义上考虑,使用了最简洁

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值