Css 使用em设置h1的大小时大小错误
我有一个h1标签,我试着用em设置这个标签的字体大小,但是没有变大,反而变小了。下面是我的代码:Css 使用em设置h1的大小时大小错误,css,font-size,em,Css,Font Size,Em,我有一个h1标签,我试着用em设置这个标签的字体大小,但是没有变大,反而变小了。下面是我的代码: h1{ 字体大小:1.2米; } 这是一个标题 你好,这是一段 您的定义是正确的,但也有一个默认样式,em与具有固定大小的父元素的字体大小相关(或者如果没有其他元素具有固定大小,则与正文元素相关) 以下是一个例子: 正文{ 字体大小:13px; } .集装箱h1{ 字体大小:1.2米; } .集装箱2{ 字体大小:20px; } .集装箱3{ 字体大小:0.5em; } text-13px 标
h1{
字体大小:1.2米;
}
这是一个标题
你好,这是一段
您的定义是正确的,但也有一个默认样式,em
与具有固定大小的父元素的字体大小相关(或者如果没有其他元素具有固定大小,则与正文
元素相关)
以下是一个例子:
正文{
字体大小:13px;
}
.集装箱h1{
字体大小:1.2米;
}
.集装箱2{
字体大小:20px;
}
.集装箱3{
字体大小:0.5em;
}
text-13px
标题1-26px(默认为2em==13*2=26px)
这是一个标题-15.6px(1.2em==13*1.2=15.6px)
你好,这是第13px段
另一个标题-40px(父项为20px,默认值为2em,2*20==40px)
第三个标题-13px(父项为13px*0.5(em)==6.5,默认h1为2em,2*6.5px==13px)
默认情况下,页面em
为16px
-因此1.2em
等于19px
页面的默认h1
为2em
或等于32px
因此,通过更改现有的值,它将减小h1
的自然大小
据我所知,1em=页面的当前字体大小
那不是真的。您将em
与rem
混淆,后者是根元素的计算字体大小
em
是使用它的元素的计算字体大小
当然,如果在字体大小
本身上使用em
单位,这将是一个循环定义。在这种情况下,em
指的是父元素的计算字体大小
然后,如果例如
h1
在用户代理样式表中默认使用font-size:2em
设置样式,如果您使用font-size:1.2em
覆盖该样式,它将变小 em
是一种度量单位,就像px
一样,但它是相对于其包含元素的,正在按预期工作,所以我假设您的页面上有其他css?也许是bootstrap?嗨,即使在JSFIDLE示例中,设置1.2em也会使它变大,对吗?它应该是原始大小的1.2,但h1较小。正如您在问题中所说,em
基于主体(或包含元素的大小),因此更改h1
的大小将覆盖其默认值。如果你用1.2em
在h1
里面放一个span
,你会得到你想要的东西,我相信,更新的小提琴我在哪里可以找到页面的默认em?你可以使用body{font size:16px}设置页面或body
字体大小
但如果未指定,浏览器将使用16px作为默认大小。您如何知道元素的默认em?@Jacky,浏览器默认标题的典型大小另一个选项-右键单击元素。检查元素并检查用户代理值:)@JishnuVS,不,没有“硬”定义。浏览器可以将默认值设置为16px,但也可以设置其他默认值。@JishnuVS,请检查我答案中的更新部分(MDN中的引用)。