“隐藏详情”元素中的显示问题

在此块中,

[details="Summary"]
This text will be hidden
[/details]

有两个 CSS 规则会使每个子元素或同级元素显示为 display: block

details[open] > *, details[open] .lightbox-wrapper {
    display: block;
}
details[open] > summary:first-of-type ~ *,
details.open > summary:first-of-type ~ * {
    display: block;
}

这是一个问题,因为每个本应内联显示的元素都会显示为块级元素,占据所有宽度。例如 span 或链接。这些规则的目的是什么? :thinking:

示例:

[details="Hidden"]
Enhanced image and comparison with the same halo on Earth:
![66bb711c57dd10e4e4f9713ebeec0ccec9a8d0dc1|220x499](upload://eEOifbxarMIErU6OnozO45BJq0I.jpeg)
![541efc040f313220531d74677a9105e44890c29c1|442x500](upload://c0ausOGkNA0BJMAsmAnOqmpWBv6.jpeg)
Though Mars's atmosphere is composed of 95% of carbon dioxide (CO<sub>2</sub>), the halo was produced by water (H<sub>2</sub>O) ice crystal, hence the similarity with the common Earth 22° [halo](https://en.wikipedia.org/wiki/22%C2%B0_halo?oldformat=true). It's exactly the same, in fact.
[/details]

Hidden

Enhanced image and comparison with the same halo on Earth:



Though Mars’s atmosphere is composed of 95% of carbon dioxide (CO2), the halo was produced by water (H2O) ice crystal, hence the similarity with the common Earth 22° halo. It’s exactly the same, in fact.


这里有 3 个内联元素:<sub> 和一个链接:



如果我们启用安全模式并禁用所有插件,即使我们没有安装自定义插件,问题也会消失:


image


try.discourse.org 的视频示例:

1 个赞

您好 @Canapin :slightly_smiling_face:

我想(如果我理解正确的话)这是因为 Markdown 和 HTML 混用的问题。如果您在图片和文字之间留一个空行,它应该会按您预期的方式显示:

隐藏

增强的图像以及与地球上相同光晕的比较:


尽管火星大气层由 95% 的二氧化碳 (CO₂<0xE5><0xAD><0x90>) 组成,但该光晕是由水 (H₂<0xE5><0xAD><0x90>) 冰晶产生的,因此与地球上常见的 22° 光晕 相似。事实上,它们完全相同。

我相信 details 被算作一个插件,所以如果您在安全模式下禁用官方插件,它们就会被关闭。

1 个赞

啊,我明白了。因为我没有添加换行符,所以后面的文本内容没有被\u003cp\u003e包裹。\n\n写的时候很容易修复。如果将来不修复这个问题,对我来说也够用了,不过我猜这有时可能会让其他人感到困惑(但我没看到其他报告,所以……)。\n\n另外,请注意预览效果很好,但最终发布的效果却不是。\n\n

\n\n—\n\n我还想知道让“隐藏详情”容器内的每个直接子元素/同级元素都成为块级元素的 CSS 规则背后的原因。

1 个赞

恐怕我不知道。 :slight_smile: 但我会把它作为一个引用提出来,以便在它之前被忽略的情况下给它一个小的提升,并希望社区中的其他人知道更多。 :crossed_fingers:

1 个赞