如下图所示:

于是上网查看了一些网站,发现这个问题是普遍存在的,如下图(FF3.5):

在很多网站涉及到表单的页面中,都存在这种表单元素与提示文字无法对齐的问题。于是打算研究一下这个问题。首先,搜索到了wheatlee前辈的文章《大家都对vertical-align的各说各话》。wheatlee在他的文章中关于垂直居中提到了这样几个关键点:

1、vertical-align:middle的时候,是该元素的中心对齐周围元素的中心。

2、这里“中心”的定义是:图片当然就是height的一半的位置,而文字应该是基于baseline往上移动0.5ex,亦即小写字母“x”的正中心。但是很多浏览器往往把ex这个单位定义为0.5em,以至于其实不一定是x的正中心(baseline等名词如果不懂,请先阅读wheatlee的文章)

按照这个思路,对照我遇到的问题,首先想到的是先验证一下浏览器对于“复选框”和图片是不是使用同样的规则来渲染(是不是把复选框当成一个正方形图片来对待)。于是写出下面的代码:

body{font-size:12px;}

测试文字

代码中的testpic.gif是一个尺寸与复选框完全一样的黑色图片。FF3.5下显示如下:

顶部对齐css表单,vertical-align 表单元素垂直对齐的解决方法相关推荐

  1. Oracle 表空间不足导致的系统无法登陆问题及解决方法

    Oracle 表空间不足导致的系统无法登陆问题及解决方法 某医院的 HIS 系统突然无法登陆,并且出现以下提示信息: 初步判断是表空间不足导致的问题,登录服务器查看表空间信息如下: 一.查看表空间信息 ...

  2. 【HTML+CSS】元素垂直对齐-vertical-algin

    参会人:@提及 会议时间:2022-01-20 会议地点:3 号会议室 文本对齐vertical-algin vertical-algin: 元素垂直对齐的方式 top顶部对齐 bottom底部对齐 ...

  3. 周末杂谈:在MYSQL中,添加数据行后,使用右外连接查询所有课程的选修情况,要求列出课程编号、课程名称、选修人数,表中没有的课程列值为空的解决方法

    周末杂谈:在MYSQL中,添加数据行后,使用右外连接查询所有课程的选修情况,要求列出课程编号.课程名称.选修人数,表中没有的课程列值为空的解决方法 实验前期准备 course表(课程表) 在其中: c ...

  4. IE浏览器“SEC7113: CSS 因 Mime 类型不匹配而被忽略”问题的解决方法

    IE浏览器"SEC7113: CSS 因 Mime 类型不匹配而被忽略"问题的解决方法 参考文章: (1)IE浏览器"SEC7113: CSS 因 Mime 类型不匹配而 ...

  5. css文本框圆角不兼容,CSS教程之重置默认样式与IE兼容圆角的解决方法

    CSS教程之重置默认样式与IE兼容圆角的解决方法 IE兼容css教程3圆角的htc解决方法 现在css3的border-radius属性可以很方便的实现圆角功能,对网站前台人员无疑是一件喜事,但悲剧的 ...

  6. CSS float浮动规则以及父元素高度塌陷的解决方法

    本文不讲float的所有内容,只浅谈float对不同高度块之间浮动结果的规则以及父元素高度塌陷的解决方法. 首先看一个小问题,就是float会导致父容器的高度塌陷,如下代码: <head> ...

  7. 深入剖析 CSS:字体度量、行高和垂直对齐

    Line-height 并且是简单的 CSS 属性.如此简单,以至于我们大多数人都相信要完全理解它们的工作原理以及如何使用它们.但事实并非如此.它们真的很复杂,也许是最难的,因为它们在创建CSS鲜为人 ...

  8. oracle如何给表上锁,【ORACLE】Oracle中发生表加锁、死锁的原因,查看,与解决方法...

    一.表加锁.死锁出现的现象 1.对数据库操作update,insert,delete时候,数据库无法更新,操作等待时长,操作结果不发生改变 2.在程序中,底层(数据访问层)操作时候,不成功,数据库连接 ...

  9. win10 无法删除 注册表 蓝牙_Win10蓝牙无法删除设备蓝牙鼠标无法连接解决方法...

    导读:(Win10蓝牙无法删除设备蓝牙鼠标无法连接怎么办?)相关电脑教程分享. 在Win10系统蓝牙设备中我们可以对连接的蓝牙进行管理,删除等操作,但是有时会遇到一些问题,如用户反馈Win10蓝牙里设 ...

  10. mysql表中的中文是乱码_mysql插入表中的中文显示为乱码或问号的解决方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. 今天在做ssh的博客项目时发现mysql数据库中的中文显示为问号,网上查阅了很多资料,都不是很全,所以我总结一下,供大家参考和自己复习. 1.我的 ...

最新文章

  1. DynamicPopulate
  2. 如何安装适用于Python的yaml软件包?
  3. 20181127-1附加作业 软件工程原则的应用实例
  4. RHEL5.5配置DHCP服务器以及DHCP中继
  5. 经典C语言程序100例之三一
  6. Leet Code OJ 169. Majority Element [Difficulty: Easy]
  7. 提高python执行效率_提升Python程序运行效率的6个方法
  8. OFFICE2019精简安装D盘(包括Word、PPT、Excel,可根据需要调整)+VISIO2019+Mathtype7.4.0完美下载安装教程
  9. bootstrap 兼容哪些浏览器
  10. 关于linux内核中使用的时钟
  11. C++基础::shared_ptr 编程细节(一)
  12. 卸载自己编译的程序(ubuntu14.04)
  13. 虚拟机修改默认SSH端口号为10022
  14. Java微信小微商户进件,已经解决接口暂无权限,稍后再试的问题
  15. python问题:IndentationError:expected an indented block错误
  16. Android中/system/build.prop文件解读(转)
  17. 机器学习性能改善备忘单:32个帮你做出更好预测模型的技巧和窍门
  18. html:用script实现搜索框
  19. js快捷获取超链接参数和修改超链接(新增URLSearchParams方法获取参数)
  20. 带进度条的x5WebView

热门文章

  1. centos下配置nginx支持php
  2. 负载均衡器技术 Nginx VS F5 Big-IP
  3. mac 开启多个eclipse QQ
  4. eclipse安装SVN插件的两种方法
  5. linux c 时间函数 time difftime 简介
  6. golang 切片 slice 去掉重复元素
  7. linux 查看 占用内存最多 占用cpu最多 程序
  8. linux 内核 链表 list_head 使用方法
  9. linux c 命令行解析函数 getopt getopt_long
  10. linux 源码编译upx 压缩软件