2017-04-04 52 views
0

不久,我在CSS中为“p”写了任何东西,这个元素的丢弃消失并覆盖了所有的“p”规则。重写元素的CSS Inherance

难道这是固定的,以保持内联和“p”元素的风格。

p:first-of-type::first-letter { 
    font-size: 25px; 
    font-weight: bold; 
} 

p:nth-of-type(2)::first-letter { 
    font-size: 25px; 
    font-weight: bold; 
} 

    p:nth-of-type(3)::first-letter { 
    font-size: 25px; 
    font-weight: bold; 
} 

/* inline container */ 
p {        
    display: inline-flex; 
    width: 33%; 
} 
+0

仅供参考:在FF中,这不是做任何事情:) – Martijn

+1

删除inline-flex规则修复了这个问题,但我不知道为什么。你为什么使用inline-flex? – Ryan

回答

2

只要我在CSS中写的 “P” 什么

不,这是特定于您的display: inline-flex声明。这不仅仅是“什么”。

flex容器不能包含::first-letter伪元素,因为flex容器包含flex项目而不是格式化的行。这就是为什么使您的p元素弯曲容器禁用所有::first-letter规则。

目前还不清楚为什么当您不想在每个段落中创建柔性布局(并且最令人担忧的是you would not be the first)时使用display: inline-flex。改为使用display: inline-block,display: table-cell或浮点数。

+0

如果我使用diplay:inline-block解决了问题,但是上边距消失了。 https://jsfiddle.net/Lfkf1dtx/1/ – Slasher