当使用Google的博客编写博客时,您可以使用“撰写”模式( WYSIWYG编辑器)或HTML模式。在使用HTML模式时,如果我编写:
<ol type="a">
<li>Item a</li>
<li>Item b</li>
</ol>当以“撰写”模式查看时,它正确地显示小写字母列表。然而,当我实际发布这篇文章时,它会返回到我的博客中的编号列表(尽管HTML源代码与上面一样)。对如何解决这个问题有什么建议吗?
发布于 2012-11-21 18:27:43
正如注释中提到的那样,不要使用属性type="a",而是使用等效的内联CSS样式:
<ol style="list-style-type:lower-latin">
<li>Item a</li>
<li>Item b</li>
</ol>除了HTML4.01中不推荐的type属性之外,如果您的博客样式表中设置了任何特定设置list-style-type的CSS样式规则,那么这将覆盖type属性。
(我假设在“撰写”模式下,不应用完整/主题样式表。)
在元素本身上指定内联样式将覆盖外部样式表中指定的任何样式。
发布于 2012-11-22 11:36:46
这就是为什么您的方法在撰写模式下工作,而不是在发布之后:
请记住,Blogger Post编辑器只是另一个WYSIWYG编辑器,它为您提供点击工具,并为您选择的特性和内容生成HTML。
幸运的是,它们也给了我们HTML模式,这样我们就可以在帖子后面的代码被有时错误的组合模式功能破坏时修复它。
当您从HTML模式切换到撰写模式时,您可以选择输入任何HTML,并在撰写模式窗口中绘制它,这是非常聪明的。
但是,如果您在撰写模式下点击“发布”,则“后编辑器”将获取您当前在“撰写摘要”中拥有的内容,并根据其支持的一组压缩HTML特性重新生成HTML。因此,您通过HTML添加的任何额外内容都是完全有效的,但不受支持(还不支持!)被后编辑弄丢了。
解决方案是在HTML模式下点击发布,因为这似乎不会导致HTML通过压缩特性重新生成。
(注:我还没有在你提到的特定问题上试过这个问题。但是它在许多其他领域对我起作用,当我从撰写中发布时,某些HTML元素(例如段落标记)已经被删除。)
当然,所提到的内联样式答案也有效:如果您按建议在post中定义样式,那么它将在您以撰写模式查看帖子时应用。但是如果你把它作为规则添加到你的模板中,那么它就不会在撰写模式下应用,而是应用于那些使用网页浏览器查看你博客的人。
https://webapps.stackexchange.com/questions/35747
复制相似问题