插入代码时发现 WordPress 会自动把引号改成全角的,且网上的解决办法(修改formatting.php设置)只是针对自建 WordPress 博客的,托管在 wordpress.com 上的博客没法这么改动。

只好曲线救国,用 <pre> 实现半角,但之后发现又出现了不能换行的问题,结果再用 CSS 属性弥补之。折腾一小番,临时解决办法如下:文章编辑时切换进入 HTML 编辑模式,用 <pre> 包裹插入的代码并设好 white-space:pre-wrap 属性,像下面这样就可以了。

<pre style="font-family: 'Courier New'; white-space: pre-wrap;"><span style="color: #ff8000;">6.8</span><span style="color: #000080;"><strong>.</strong></span> Functional Programming <span style="color: #ff8000;">6.8</span><span style="color: #000080;"><strong>.</strong></span><span style="color: #ff8000;">1.</span> 对一个Enumerable对象应用一个函数 Applying a Function to an Enumerable
...
...
...
</pre>

附:

CSS white-space 属性

CSS 参考手册

定义和用法

white-space 属性设置如何处理元素内的空白。 这个属性声明建立布局过程中如何处理元素中的空白符。值 pre-wrap 和 pre-line 是 CSS 2.1 中新增的。
默认值: normal
继承性: yes
版本: CSS1
JavaScript 语法: object.style.whiteSpace="pre"

浏览器支持

所有浏览器都支持 white-space 属性。 注释:任何的版本的 Internet Explorer (包括 IE8)都不支持属性值 "inherit"。

可能的值

描述
normal 默认。空白会被浏览器忽略。
pre 空白会被浏览器保留。其行为方式类似 HTML 中的 <pre> 标签。
nowrap 文本不会换行,文本会在在同一行上继续,直到遇到 <br> 标签为止。
pre-wrap 保留空白符序列,但是正常地进行换行。
pre-line 合并空白符序列,但是保留换行符。
inherit 规定应该从父元素继承 white-space 属性的值。

WarmGrid

Answerers: April and Probe