我目前正在更新网站以提高响应速度/移动友好性.我有一切工作奇妙,只有一个例外,< pre>格式化代码示例.内容由博客引擎提供,差异完全在主题之间.恢复原来的主题,一切都很好.
这是< pre>的原始显示.代码示例格式正确:
以下是Chrome看到的基础元素标记:
但是,在更新CSS之后,预格式化的代码无法正常显示,而是显示如下:
在Chrome中,CSS几乎完全相同:
由于某些原因,使用新的布局/标记,即使应用于预标记的样式实际上相同,我也无法使格式设置正常工作.我尝试过设置白色空间:pre和white-space:预先包装,在各个级别都没有效果.我添加了自动换行以支持调整现有内容的大小,删除或添加它无效.我已经尝试更改显示:类型,父容器,更改溢出类型等.一切都没有效果.我根本想不通为什么< pre>标签似乎忽略了空白设置.
仅供参考,如果您对此感兴趣,请访问网站链接is here.原始的CSS主题is here和新的CSS主题is here.您可以看到一个搞砸的源代码示例here.
编辑以添加计算的CSS结果,尽管它们似乎都是次要的格式差异:
好/旧计算:
新/破计算:
编辑 – 解决方案
它最终成为MasterPage的Render()方法,BlogEngine主题具有从渲染结果中去除空白的逻辑.所以CSS和空白是一个红色的鲱鱼,没有空白去剥离.