我正在尝试为我的页面设置基线网格,但是当我设置字体比例时,文本不适合基线网格。
我做错了什么?问题与字体比例有关吗?
这是小提琴:http://jsfiddle.net/3stut/
以下是代码:
HTML
<body>
<h1>Your Name</h1>
<h2>Your Name</h2>
<h3>Your Name</h3>
<h4>Your Name</h4>
<h5>Your Name</h5>
<h6>Your Name</h6>
<p>Paragraph</p>
</body>
CSS
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
margin: 0;
padding: 0;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
fieldset, img {
border: 0;
}
address, caption, cite, dfn, th, var {
font-style: normal;
font-weight: normal;
}
caption, th {
text-align: left;
}
h1, h2, h3, h4, h5, h6 {
font-size: 100%;
font-weight: normal;
}
q:before, q:after {
content: '';
}
abbr, acronym {
border: 0;
}
h1,h2,h3,h4,h5,h6,hgroup,ul,ol,dd,p,figure,pre,table,fieldset,hr,.header,.media,.island{
margin-bottom:1.5rem;
}
html {
font:1em/1.5 Cambria, Georgia, "Times New Roman", Times, serif;
background: url(http://media.smashingmagazine.com/wp-content/uploads/technical-type/img/css/grid.png) center -6px repeat-y #fff;
color: #333;
width: 940px;
padding: 0 10px;
margin: 0 auto;
}
body {
width: 460px;
margin: 0 auto;
padding-top: 72px;
}
h1 {font-size:48px;}
h2 {font-size:30px;}
h3 {font-size:24px;}
h4 {font-size:21px;}
h5 {font-size:18px;}
h6 {font-size:16px;}
答案 0 :(得分:2)
如果“基线网格”表示它在排版中的传统意义,那么代码实际上并没有尝试在基线网格中设置内容。对于这样的网格,您需要确保元素的总高度(包括边距)是网格线高度的倍数。没有样式,例如标题和图像不会位于基线网格上。
对于标题,假设您使用基于px的大小调整方法和将边距设置为零的CSS重置,以下内容将使标题满足基本要求:
* { font-size:16px; line-height: 18px; }
h1 {font-size:48px; line-height: 54px;}
h2 {font-size:30px; line-height: 36px; }
h3 {font-size:24px; line-height: 36px; }
h4 {font-size:21px; line-height: 36px; }
h5 {font-size:18px; }
h6 {font-size:16px; }
这里,所有线高都是18px的整数倍。您可以通过使线高度部分更小(甚至低至每个元素的字体大小或稍微低一些)来修改方法,并添加例如相应的上限。
这不会使标题文本基线与另一列中的普通文本基线对齐。使用CSS几乎不可能进行这种调整,因为字体底部和字体基线之间的距离是未知的。如果您只使用一种字体或几种字体,期望它们可用,您可以对事物进行微调(例如,使用相对定位)以使基线匹配。但重点是普通文本基线匹配,这可以通过设置上述元素的高度来实现。
答案 1 :(得分:1)
喜欢这个
<强> demo 强>
<强> CSS 强>
h1 {font-size:48px; margin:0; padding:0;}
h2 {font-size:30px; margin:0; padding:0;}
h3 {font-size:24px; margin:0; padding:0;}
h4 {font-size:21px; margin:0; padding:0;}
h5 {font-size:18px; margin:0; padding:0;}
h6 {font-size:16px; margin:0; padding:0;}
-
赞this?
<强> demo1 强>
<强> demo2 强>
<强> demo3 强>
<强> CSS 强>
h1{
font-size:30px;
}