当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS教程:网页字体的设置和控制

CSS样式表
DIV和CSS排版中制作细线条的方法小结
在解决ul居中问题时想到的几点
网页编辑中CSS样式表技巧总结
一个老外弄的Clearing floats(清除浮动的方法)
常用的DIV+CSS的基本框架结构但不推荐都放一个div里
无js5款纯div+css制作的弹出菜单标准
超强推荐CSS打造经典鼠标触发显示选项
CSS网页布局入门教程5:二列宽度自适应
CSS网页布局入门教程6:左列固定,右列宽度自适应
CSS网页布局入门教程7:二列固定宽度居中
CSS网页布局入门教程9:用CSS设计网站导航——横向导航
CSS网页布局入门教程10:带当前标识的标签式横向导航
CSS网页布局入门教程11:带当前标识的标签式横向导航图片美化版
CSS网页布局入门教程12:纵向导航菜单
CSS网页布局入门教程13:下拉及多级弹出式菜单
CSS网页布局入门教程14:纵向下拉及多级弹出式菜单
解读css发展历史
让用户自己控制网页字体的大小的css书写方法
CSS注释、命名、继承性、样式排序等CSS技巧的小结
CSS标签切换代码实例教程 比较漂亮

CSS样式表 中的 CSS教程:网页字体的设置和控制


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 187 ::
收藏到网摘: n/a


                         Div CSS网页布局中对字体的控制是非常重要的,对于需要精确效果的页面而言。这类设置会非常有用。对于一般用户与开发者而论,使用浏览器默认字体即可,52CSS.com鲜有这方面的知识的介绍。此文分享了作者很独特的CSS实践经验。从此文可以看出。对页面字体的控制与设置的                DivCSS网页布局中对字体的控制是非常重要的,对于需要精确效果的页面而言。这类设置会非常有用。对于一般用户与开发者而论,使用浏览器默认字体即可,Webjx.com鲜有这方面的知识的介绍。此文分享了作者很独特的CSS实践经验。从此文可以看出。对页面字体的控制与设置的思考,将CSS的工作进行的更加深入了。
body{font-family:Arial,sans-serif;}
  这是我迄今发现的最好的全局字体解决方案。当然,所谓“最好”,也只是基于我个人的评判标准。所以我还是得分析一下其他的写法有什么缺点,最后再总结这个写法的特点。
body{font-family:"宋体",sans-serif;}
  这个写法可能的缺点在于:
  1.宋体在Safari和Vista的IE7下,看起来很难看。(我稍后把截图补上)
  2.宋体的英文字很难看。
  3.如果在CSS里写中文,你得小心你HTML和CSS的编码是否一致。
body{font-family:SimSun,sans-serif;}
  这样写,可以避免上面的第三个问题。但是宋体本身确实很难看。我们希望在不同平台下,都用各自默认的字体。XP是宋体,Vista是微软雅黑,Mac是黑体。这样的话,只能将字体的第一个设置为英文字体,这样遇到中文的时候,浏览器会自动调用默认字体(VistaIE7的一些版本里貌似默认还是宋体,这个我就无能为力了,交给用户设置的自主权吧)
body{font-family:Tahoma,sans-serif;}
  这是一个不错的解决办法。Tahoma其实是一个挺漂亮的字体(我同事喜欢称它“大河马”,哈哈)。但是它其实会带来一些问题:
  1.由Tahoma显示的中文,在IE6里,下划线会紧紧的贴住中文字,很难看。
  2.IE6下,Tahoma无法正确的设定为13px。它会跟14px一样大。但是其他浏览器没有这个问题。
  3.如果一行里同时出现中文和英文,且这一行里有元素被定义了vertical-align属性,在IE6、7里会导致文字高低不齐,甚至下划线错位。
body{font-family:Arial,ans-serif;}
  上述两个问题,Arial都没有。但是Arial也有缺点:
  1.比Tahoma难看。
  2.Tahoma里的第三个问题也同样存在。
  不过,这个bug是有个解决办法的,就是将这一行定义zoom:1。
  所以,如果不嫌难看,定义为Arial是最合适的。如果实在不喜欢,可以将全局定义为Tahoma,然后再将有下划线的(如链接)文字定义为Arial,至少可以缓解一下。
  最后,对于全局字体,补充一点:
  IE里,所有的表单元素都不继承body的字体属性,需要单独设置:
input,label,select,option,textarea,button,fieldset,legend{
font-family:Tahoma,sans-serif;
}