我们正在运行到我们如何指定的字体大小的问题。如果我们使用pt指定字体大小,它们在浏览器/平台上并不总是相同的。如果我们使用px指定字体大小,则IE6用户无法调整文本大小。如何在CSS中指定字体大小,以便它们匹配模型并允许调整大小?
回答
An article on A List Apart(2007年11月),在各种浏览器探讨了这一深度,并得出结论:
浆纱文字和EMS行高,与人体中指定的百分比(和Safari浏览器2可选的警告)被证明能够在当今所有常用浏览器中提供准确,可调整大小的文本。这是一种技巧,您可以将它放入工具包中,并将其用作用于CSS大小的最佳实践,以满足设计师和读者的需求。
他们提供screen shots该技术在大多数流行的浏览器中的样子。以下是他们使用的代码:
<style type="text/css">`
body {
font-size:100%;
line-height:1.125em;
}
.bodytext p {
font-size:0.875em;
}
.sidenote {
font-size:0.75em;
}
</style>
<!--[if !IE]>-->
<style type="text/css">
body {
font-size:16px;
}
</style>
<!--<[endif]-->
你应该总是使用相对单位的字体大小,如他们。
http://developer.yahoo.com/yui/fonts/#fontsize(编辑:我相信这是假定其基CSS,但它是假设的13像素的基大小;我相信甚至IE适当调整大小,其中百分比是针对一个像素尺寸测量百分比尺寸的文本)
也就是说,如果您尝试匹配图形模型,但即使只是浏览器到浏览器,文本渲染中的东西也会有所不同,您将永远无法获得像素完美的字体大小,如果您想要匹配图形模型,则可以使用,尤其是。
除非您使用px,否则您总是会遇到匹配模型的麻烦。 http://www.456bereastreet.com/archive/200602/setting_font_size_in_pixels/
我不觉得有什么特别的错误使用像素为您的网页。特别是因为几乎所有的现代浏览器(除webkit外)都使用缩放而不是默认的文本大小调整。
我还是会坚持到什么弥敦道建议,因为它可以让你更多的设计灵活性,因为你可以快速改变仅其中一个缩放整个网站的字体大小。但是,如果你很懒,或者想要真正发现,那么你不必担心px。
相反的是别人已经回答了,你永远也不会使用的字体大小的像素。 Internet Explorer 6仍然有一大块浏览器市场派,它绝对不会调整用像素大小指定的文本(如问题中提到的那样)。你应该总是努力使用“em”。
我使用了一种类似于其他人所建议的技术,通过这种技术我可以“重置”CSS中的所有样式,以消除任何浏览器与字体大小和位置不一致的问题。我喜欢eric meyer's reset reloaded款式作为基地。如果你想挖掘整个图书馆,你也可以使用yahoo reset css方法。
接下来,我用owen briggs' sane css typography template。您可能会注意到它自2003年以来没有更新过,但在今天的浏览器中仍然绝对可靠。
一旦你得到这个基地,这是一个简单的事情,改变<body>
标签上的字体百分比,可以轻松地按照相同的方式在网站上缩放所有字体。
的不耐烦,这里是Eric Meyer的重置CSS和欧文布里格斯排版CSS一起捣碎(通过this excellent css formatter解析):
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;outline:0;font-weight:inherit;font-style:inherit;font-size:100%;font-family:inherit;vertical-align:baseline;margin:0;padding:0;}
:focus{outline:0;}
body{line-height:1;font-family:verdana, arial, helvetica, sans-serif;font-size:76%;}
ol,ul{list-style:none;}
table{border-collapse:separate;border-spacing:0;}
caption,th,td{text-align:left;font-weight:400;}
blockquote:before,blockquote:after,q:before,q:after{content:"";}
blockquote,q{quotes:"" "";}
a{text-decoration:none;font-weight:700;color:#000;}
a:hover{text-decoration:underline;}
h1{font-size:2em;font-weight:400;margin-top:0;margin-bottom:0;}
h2{font-size:1.7em;font-weight:400;margin:1.2em 0;}
h3{font-size:1.4em;font-weight:400;margin:1.2em 0;}
h4{font-size:1.2em;font-weight:700;margin:1.2em 0;}
h5{font-size:1em;font-weight:700;margin:1.2em 0;}
h6{font-size:.8em;font-weight:700;margin:1.2em 0;}
img{border:0;}
ol,ul,li{font-size:1em;line-height:1.8em;margin-top:.2em;margin-bottom:.1em;}
p{font-size:1em;line-height:1.8em;margin:1.2em 0;}
li > p{margin-top:.2em;}
pre{font-family:monospace;font-size:1em;}
strong,b{font-weight:700;}
- 1. 使用JQuery调整窗口大小调整CSS字体大小
- 2. CSS百分比大小指定大小调整元件超过指定大小
- 3. 如何调整Unicode字符大小以匹配字母字符
- 4. 如何调整字体大小,以便随后访问页面?
- 5. UIWebView中的字体大小与iOS字体大小不匹配
- 6. 字体大小不匹配
- 7. 调整PictureBox的大小以匹配图像大小
- 8. JButtons没有调整大小以匹配他们的首选大小
- 9. c#窗体:如何匹配backgroundimage大小以形成大小
- 10. 不允许调整窗口大小
- 11. 允许调整大小的窗口pyGame
- 12. 字体调整大小HTML
- 13. CSS3调整大小属性只允许增加DIV大小
- 14. 如何在FormLayoutPanel中调整窗体的大小时调整窗体的大小?
- 15. VB.NET调整窗体大小并在TextBox中检测大小
- 16. 如何允许在PyQt4中调整QMessageBox的大小
- 17. 调整div大小时调整字体大小
- 18. 如何调整字体大小
- 19. MD-按钮调整字体大小以适合按钮大小
- 20. 在UITextView中调整字体大小
- 21. 如何在隐藏窗口小部件后调整窗口大小,同时仍允许调整窗口大小?
- 22. 如何创建可调整大小并一次调整大小? (以编程方式开始调整大小)
- 23. jquery - 调整它们被声明的所有字体大小?
- 24. 调整图像大小,使它们大小相同
- 25. 调整字体大小 - 字体属性
- 26. 媒体查询字体大小未调整大小
- 27. 调整大小在textarea的字体不增加textarea的大小
- 28. 字体大小在文本较长时不会调整大小
- 29. 禁止用户在特定大小后调整窗体大小
- 30. CSS为font-family中的每种字体指定字体大小?
价值观为‘行高’特性并不需要指定一个单位。行高已经相对于字体大小,所以无单位的行高与ems中指定的相同。所以'line-height:1.125em''与'line-height:1.125'相同 – 2009-02-27 17:55:43