我正在构建一个动态包含在页面上的HTML片段.该片段看起来像这样:
<article>
<h2>Title</h2>
<p>Content</p>
</article>
Run Code Online (Sandbox Code Playgroud)
问题是我无法知道文档大纲中的哪个部分将被包含在内.它可能直接出现在<h1>,或者它可能嵌套在几个深层次的下面<h4>.换句话说,我的大纲可能如下所示:
<h1>
<h2>
<h3>
<h2>
<h2>
Run Code Online (Sandbox Code Playgroud)
很合乎逻辑.或者它可能看起来像这样:
<h1>
<h2>
<h2>
<h2>
<h2>
Run Code Online (Sandbox Code Playgroud)
不那么合乎逻辑.或者甚至可能看起来像这样:
<h1>
<h2>
<h3>
<h2>
<h2>
<h2>
Run Code Online (Sandbox Code Playgroud)
彻头彻尾的奇怪,我无法知道或控制它!
我不关心样式,只关注语义.
我认为最好的解决方案是在<h1>每个地方使用s并让分段元素按照新的HTML5文档大纲处理语义,但是我的研究建议我反对,因为没有客户实际上支持这种概述方法.那么什么是最好的解决方案?
在使用脚本来解决问题的评论中提出了一些想法.这些可以工作,但我想我想知道是否有一个合理的解决方案,不需要增加代码的复杂性,我认为浏览器应该自己做的事情.
假设,如果无论出于何种原因这样的脚本解决方案是不可能的,那么使用<h1>s 创建一个扁平轮廓而不是用不正确嵌套的子级创建一个完全错误的轮廓是否有意义?
我是第一次尝试 110 个静态站点生成器。每当我构建时,内容文件都会生成得很好,但没有任何资产(CSS、JS、图像等)最终出现在输出目录中 - 出现的只是 HTML,其中资产的链接已损坏。
现在我使用默认的目录结构:
我尝试像上面一样构建它,并且尝试将 css 放入 _includes 目录中。我还尝试将 css 放入输出文件夹 (_site/) 中,这有效,但必须在输出中编辑源文件似乎是错误的。
我到处搜索过,但我发现的教程都没有涉及包括 CSS 之类的内容。
有没有一种正确的方法可以解决我所缺少的问题,或者您真的应该在源文件和输出中编辑文件吗?