杂货铺

杂货铺中囤杂货

👉 所有文章
技术 理解 HTML 中的 pre 标签 使用 prismjs 代码高亮库 理解 sitemap.xml 解决 Intellij IDEA 右下角不显示 git 分支的问题 并发与并行的区别 ASCII码对照表 理解字符编码、Unicode、UTF-8、UTF-16 认证与鉴权的区别
工具 DBeaver: 跨平台的数据库管理工具 Snipaste: 一个非常好用的截图、贴图工具 常见的网页版流程图、UML建模工具 实用 Chrome 谷歌浏览器插件 低多边形图片生成工具 一些好用的 Markdown 编辑器 Windows 下好用的软件 使用 Genymotion 模拟 Android 环境 实用工具整理 实用网站整理 calibre - 电子书管理软件
其他 试用Atom编辑器 解决谷歌索引404网页的问题 解决论文编译后没有参考文献 思维导图,认清自己,制定目标 想法若干——关于地图 man2:一个快速查找命令使用示例的工具 浅入浅出CouchDB:CouchDB安装 浅入浅出CouchDB:使用curl管理CouchDB 如何修改自己在github中的项目 对c++指向数组指针的一些理解 升级wordpress出现错误:Request exceeded the limit of 10 internal redirects The spirit of softwares 方法链 一些不错的网站 苹果的swift 如何现代化院系的网站 事前、事中、事后 关于选择的一些思考 重要紧急矩阵 二八定律 真相 如何在电脑上使用微信读书 ? 如何关闭微信读书的「看一看」? 从零开始Docker化Ghost博客系统 ghost博客添加多说评论 以生产模式运行Ghost博客系统 Ghost博客主题制作简明教程 将Ghost打造成一个本地APP 重置Ghost博客中的用户密码 在Ubuntu中安装Ghost博客系统 为Ghost博客添加标签云
已迁移 【已迁移】故事: 2020 【已迁移】故事: 2019-nCoV 肺炎

理解 HTML 中的 pre 标签


HTML 的 <pre> 标签会将其包含的内容原封不动的展示出来

下面的的示例中引入了boostrap 的css文件作为辅助,使用军蓝色(cadetblue)作为 class 为 container 的div的背景色:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <link href="https://cdn.bootcss.com/twitter-bootstrap/4.2.1/css/bootstrap.min.css" rel="stylesheet">
    <style>
        .container {
            margin-top: 100px;
            background-color: cadetblue;
        }
    </style>
</head>
<body>

<div class="container">
<pre>
12
print 'hi'
print 'hello hello hello hello hello hello hello hello hello hello hello'
</pre>
</div>

<div class="container">
<pre>12
print 'hi'
print 'hello hello hello hello hello hello hello hello hello hello hello'</pre>
</div>

</body>
</html>

在谷歌浏览器中效果如下:

可见,<pre>所在行若<pre>之后有内容(空格也算内容),则将内容展示在第1行。若<pre>之后无内容,则以<pre>下一行内容展示为第1行。 类似的,</pre>所在行若</pre>之前有内容(空格也算内容),则将内容展示在最后一行。若</pre>之前无内容,则以</pre>上一行内容展示为最后一行。

如果每一行之前有空格:

<div class="container">
<pre>
    12
    print 'hi'
    print 'hello hello hello hello hello hello hello hello hello hello hello'
</pre>
</div>

那么空格也会被浏览器展示出来:

如果要让浏览器展示出<>`pre的代码中需要写成 &lt;&gt;。如果 pre 标签的内容中有其他的 HTML 标签,浏览器会将他们作为标签处理,而不是原封不动的展示出来。例如:

<div class="container">
<pre>
<code>
&lt;12&gt;
print 'hi'
print 'hello hello hello hello hello hello hello hello hello hello hello'
</code>
</pre>
</div>

<div class="container">
<pre>
<code>12
print 'hi'
print 'hello hello hello hello hello hello hello hello hello hello hello'</code>
</pre>
</div>

效果如下:

为什么第1个代码块,第一行和最后一行是空行?因为<code></code> 标签单独占了一行,它们所在行的末尾都有一个回车符。

pre 内部支持其他的html标签,那么自然支持这些标签的渲染效果:

<div class="container">
<pre>
    <strong style="color: green">12</strong>
print 'hi'
print 'hello hello hello hello hello hello hello hello hello hello hello'
</pre>
</div>

效果如下:


( 本文完 )

文章目录