首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么设置div class font-size没有设置p元素的字体大小?

在CSS中,选择器的特异性(Specificity)决定了当多个样式规则应用于同一个元素时,哪个规则会生效。特异性是一个权重值,它由选择器的类型、ID、类和元素决定。

当你设置了一个divclassfont-size,但没有为p元素单独设置font-size时,p元素的字体大小可能不会改变,原因如下:

  1. 继承性p元素作为div的子元素,默认会继承父元素的某些样式属性,但font-size通常不会被继承,除非明确设置。
  2. 特异性:如果divclass选择器和p元素的选择器特异性相同,那么后面的样式会覆盖前面的样式。如果没有为p元素设置font-size,那么它会保持默认值,而不是继承divfont-size
  3. 默认样式:浏览器对p元素有默认的font-size,如果没有明确设置,它会使用这个默认值。

解决方法

你可以通过以下几种方式来确保p元素的字体大小被正确设置:

1. 直接为p元素设置font-size

代码语言:txt
复制
p {
  font-size: 16px; /* 或其他你需要的值 */
}

2. 使用更具体的选择器

如果你希望p元素继承divfont-size,可以使用更具体的选择器:

代码语言:txt
复制
div.my-class p {
  font-size: inherit;
}

3. 使用!important

虽然不推荐频繁使用!important,但在某些情况下它可以解决问题:

代码语言:txt
复制
div.my-class {
  font-size: 16px !important;
}

示例代码

假设你有以下HTML结构:

代码语言:txt
复制
<div class="my-class">
  <p>This is a paragraph.</p>
</div>

你可以这样设置CSS:

代码语言:txt
复制
.my-class {
  font-size: 16px;
}

.my-class p {
  font-size: inherit; /* 或者直接设置 font-size: 16px; */
}

参考链接

通过以上方法,你可以确保p元素的字体大小按照预期进行设置。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Rem布局的原理解析

div class="p1"> div class="s1">1div> div class="s2">1div> div> div class="p2"> div class...="s5">1div> div class="s6">1div> div> .p1 {font-size: 16px; line-height: 32px;} .s1 {font-size...(16px),所以html的font-size为32px*/ html {font-size: 2rem} /* 作用于非根元素,相对于根元素字体大小,所以为64px */ p {font-size:...可以实现神奇的x 通过上面对rem的介绍,可以发现,如果子元素设置rem单位的属性,通过更改html元素的字体大小,就可以让子元素实际大小发生变化 html {font-size: 16px} p {width...: 首先是字体的问题,字体大小并不能使用rem,字体的大小和字体宽度,并不成线性关系,所以字体大小不能使用rem;由于设置了根元素字体的大小,会影响所有没有设置字体大小的元素,因为字体大小是会继承的,难道要每个元素都显示设置字体大小

1.2K20
  • 长度单位、calc() 表达式

    实际情况是与浏览器使用显示器的实际像素值有关,在目前大多数的设计者都倾向于使用像素(px)作为单位 em em表示元素的font-size属性的计算值,如果用于font-size属性本身,相对于父元素的...font-size;若用于其他属性,相对于本身元素的font-size 具有继承的特点 当没有设置font-size时,浏览器会有一个默认的 em 设置:1em = 16px 缺点:容易混乱 class="box"> div class="in">测试文字div> div> rem rem 是相对于根元素html的font-size属性的计算值,...比较好计算 当没有设置 font-size 时,浏览器会有一个默认的 rem 设置:1rem = 16px,这点与 em 是一致的 兼容性:IE8-不支持 /* 浏览器默认字体大小为16px,则2*16=32px,所以根元素字体大小为32px */ html{font-size: 2rem;} /* 2*32=64px */

    81610

    CSS入门13-单位详解

    这些长度由数字和单位组成,数字和单位之间是没有空格的。长度单位的类型有两种:绝对长度单位和相对长度单位。 2. 绝对长度单位 绝对长度单位的含义,就是客观上绝对存在的单位,放在任何地方都一样。...相对长度单位 3.1 相对字体大小的长度单位 3.1.1 em em相对于应用在当前元素的字体尺寸。...如果用于font-size属性本身,相对于父元素的font-size计算;若用于其他属性,相对于元素本身的font-size计算。 元素字体大小2*16=32px*/ font-size: 2rem; } .outer { /*字体大小3...3.1.2-1 但是根部元素设置成rem或者使用默认大小不方便计算,所以一般将根部元素字体大小设置为100px。为什么不是10px呢,因为chrome下字体大小最小为12px。 <!

    64120

    移动端页面的自适应rem

    ;rem作用于根元素字体大小时,相对于其出初始字体大小——MDN rem取值分为两种情况,设置在根元素时和非根元素时,举个例子 /* 作用于根元素,相对于原始大小(16px),所以html的font-size...为32px*/html {font-size: 2rem}/* 作用于非根元素,相对于根元素字体大小,所以为64px */p {font-size: 2rem} 三、Rem布局原理 如果子元素设置rem...单位的属性,通过更改html元素的字体大小,就可以让子元素实际大小发生变化 html {font-size: 16px}p {width: 2rem} /* 32px*/html {font-size:... div class="p1"> 宽度为屏幕宽度的50%,字体大小1.2em div class="s1"> 字体大小1.2....em div> div> div class="p2"> 宽度为屏幕宽度的40%,字体大小默认 div class="s2">

    2.4K20

    CSS单位em和rem

    应该很多都知道rem是根据HTML元素设置的字体大小来定义单位,em是根据父元素设置的字体大小来设置,但是很多没有真的搞清楚这两个单位对应px单位到底是怎么对应的。...: 1rem">这是em单位p> div> 当我们设置HTML字体大小为20px的时候,相当于1rem=20px,此时div的宽高就是100px,字体大小就是20px,当我们改变HTML字体大小的时候...当我们没有设置字体大小的时候 p style="font-size: 1em">这是em单位p> 默认的是浏览器默认字体大小,Chrome是16px。...当我们设置字体大小 div style="width: 500px;height: 500px;background: red;font-size: 30px"> p style="font-size...Em单位是优先根据自身的字体大小,如果没有就向上寻找最近父元素有设置字体大小来换算的。其实只要写一写上面的代码然后看一看浏览器显示的大小就很容易知道em和rem是根据上面来换算。 (完)

    1.1K20

    【融职培训】Web前端学习 第2章 网页重构18 rem布局

    ="test2">测试文字2p> 25 div> 26 27 在上面的代码中,p元素的父级是div元素,我们将p元素的字体设置成1em和0.5em,当div...元素的font-size值发生变化的时候,就会影响两个p元素的字体大小,说明em是一个相对单位,它参照的是父级元素的font-size值。...p class="test2">测试文字2p> 25 div> 26 27 在上面的代码中,我们将两个p元素设置成rem单位,这样我们通过修改html元素的...font-size值,就能影响两个p元素的字体大小,这说明rem也是一个相对的单位,它参照的是html元素的font-size值。...class="box"> 24 25 div> 26 27 在上面的代码中,我们将div的宽和高都设置成了3.6rem,用浏览器打开,发现元素宽度与高度相同

    45010

    CSS 关于line-height详细讲解

    定义 line-height CSS 属性用于设置多行元素的空间量,如多行文本的间距。...line-height单位 数字:该属性的应用值是这个无单位数字乘以该元素的字体大小 长度:指定用于计算 line box 的高度;如:px、em 等 百分比:计算值是给定的百分比值乘以元素计算出的字体大小...HTML: div class="f1"> class="p1">测试一下line-height属性 div> div class="f2"> class="p2">测试一下line-height属性2.0 div> CSS: .p1 { line-height: 40px; outline: 1px...对于块盒 该属性是块盒content区域中行盒的最小高度,不涉及padding、border区域,在实际开发,通常用来使文字内容居中显示;且在块盒没有设置高度的前提下,则块盒高度默认等于line-height

    69130

    Web前端学习 第2章 网页重构18 rem布局

    ="test2">测试文字2p> 25 div> 26 27 在上面的代码中,p元素的父级是div元素,我们将p元素的字体设置成1em和0.5em,当div...元素的font-size值发生变化的时候,就会影响两个p元素的字体大小,说明em是一个相对单位,它参照的是父级元素的font-size值。...p class="test2">测试文字2p> 25 div> 26 27 在上面的代码中,我们将两个p元素设置成rem单位,这样我们通过修改html元素的...font-size值,就能影响两个p元素的字体大小,这说明rem也是一个相对的单位,它参照的是html元素的font-size值。...class="box"> 24 25 div> 26 27 在上面的代码中,我们将div的宽和高都设置成了3.6rem,用浏览器打开,发现元素宽度与高度相同

    43630

    【CSS】课程网站 网格商品展示 模块制作 ② ( 网格商品展示盒子模型测量及样式 | 处理列表间隙导致意外换行问题 | 代码示例 )

    像素的外边距 */ margin: 0 20px; /* 设置字体大小和颜色 */ font-size: 12px; color: #999; } /* 第二行文本样式 - 前面的橙色文本...-- 没有设置高度 内部有浮动 必须清除浮动 --> div class="box-bd clearfix"> 没有设置高度 内部有浮动 必须清除浮动 --> div class="box-bd clearfix"> <img src="images/pic.jpg...: 400; } /* 第二行文本样式 */ .box-bd li p { /* 左右设置 20 像素的外边距 */ margin: 0 20px; /* 设置字体大小和颜色 */ font-size...: 400; } /* 第二行文本样式 */ .box-bd li p { /* 左右设置 20 像素的外边距 */ margin: 0 20px; /* 设置字体大小和颜色 */ font-size

    2.4K20

    CSS常用单位

    ,若父元素font-size属性设置为16px,下一级元素设置为1.2em,经计算实际像素为16px * 1.2 = 19.2px,再下一级元素若继续设置为1.2em则经计算为16px * 1.2 *...rem不是只对定义字体大小有用,可以使用rem把整个网格系统或者UI样式库基于HTML根元素的字体大小上,这将带来更加可预测的字体大小和比例缩放,实现响应式的布局。...子元素的top和bottom如果设置百分比,则相对于直接非static定位的父元素的高度,同样子元素的left和right如果设置百分比,则相对于直接非static定位父元素的宽度。...子元素的padding如果设置百分比,不论是垂直方向或者是水平方向,都相对于直接父亲元素的width,而与父元素的height无关。...子元素的margin如果设置成百分比,不论是垂直方向还是水平方向,都相对于直接父元素的width。

    1.5K20

    行内元素空白“消消乐”

    我们将两个div内的两个span设为display:inline-block;width:50%;,会发现两个span元素并没有在同一行,这就是源码中的空白导致的。 示例图与代码如下: ?...HTML: div class="Resolve"> 左侧行内元素 右侧行内元素 div> CSS: .Resolve { width...HTML: div class="Resolve Resolve1"> 左侧行内元素右侧行内元素 div> 解决方案 2:font-size...那么既然空格和字体大小font-size相关。那么也可以通过字体大小来消除这个空隙。 在父级元素上设置font-size: 0;,然后再在内部的span设置需要的字体大小即可。...{ font-size: 0; } .Resolve2 span { font-size: 14px; } 这种情况在内部的行内元素字体大小比较统一时,处理起来较为方便,但如果包含的行内元素中存在多种字体大小

    1.3K10

    rem适配移动端的原理及应用场景

    2.1、em em作为font-size的单位时,其代表父元素的字体大小,em作为其他属性单位时,代表自身字体大小——MDN 比如父元素font-size:12px; 自身元素如果写成:font-sise...,相对于根元素字体大小;rem作用于根元素字体大小时,相对于其出初始字体大小——MDN 比如根元素(html)设置font-size=12px; 非根元素设置width:2rem;则换成px表示就是24px...; 如果根元素设置成font-size=1rem;则根元素换成px就是相对于初始字体大小,一般是12px; 2.3、vm/vh vw :视口宽度的 1/100;vh :视口高度的 1/100 —— MDN...假设我们将屏幕平局分为10份,每一份宽度用一个a表示,即a=屏幕宽度/10;那么: div{width: 5a} /* 屏幕宽度的50% */ 但是css中没有a这个单位啊?那怎么办呢?...字体并不合适使用rem, 字体的大小和字体宽度,并不成线性关系,所以字体大小不能使用rem;由于设置了根元素字体的大小,会影响所有没有设置字体大小的元素,因为字体大小是会继承的,难道要每个元素都显示设置字体大小

    1.7K20

    全栈之前端 | 8.CSS3基础知识之文本样式学习

    font-style:设置字体样式 font-family: 设置文本字体 font-size:设置字体大小 font-weight:设置字体的粗细程度 font-variant: 设置可变字体 #...表现的效果和没有设置 text-align 一样,当你因为某种原因需要在已经设置了 text-align 的元素上禁用齐行效果的时候,这个属性值很有用。...font-size 属性 - 设置字体大小 描述: 此属性用于设置字体大小, 更改字体大小还会更新字体大小相关的 单位,例如 em、ex 等。...温馨提示:若你没有设置字体大小,则其普通文本() 语法参数: /* 值: 基于用户默认字体大小(medium)的绝对大小关键字。...*/ font-size: smaller; font-size: larger; /* 值:相对于字体的单位(例如 em 和 ex),字体大小相对于父元素的字体大小。

    38920
    领券