自从接触了Markdown后就一直用这种语言写学习笔记。

但是一直在纠结如何生成方便的目录。

下面是我搞得一个简单的模板可以生成固定在屏幕左边的目录。



就是这种

第一步,编辑器

首先,需要一个可以自动生成HTML格式的Markdown编辑器。

相信看这篇文章的应该都有了。

我用的是装了插件的Sublime Text编辑器。

第二步,格式

首先你要写一个格式正确的Markdown文本。

主要是每一级标题要使用正规的Markdown语法:

# 这是一级标题
## 这是二级标题
### 这是三级标题
###### 这是六级标题

第三步,目录生成

使用[TOC]生成一个自带的目录。

[TOC]是Markdown自动生成目录的方法,建议将目录生成在文章最上边,方便下面操作。

第四步,CSS修改

打开生成的HTML文件,修改CSS文件。

具体方法如下:

1.删除body样式

将CSS部分的body{}中限制大小和位置的语句删除。

或者干脆删除body{}中的全部内容。

或者将body{}如下修改:

/*我的HTML中body样式如下,其中width: 45em;会限制文章的大小,我将它注释掉了。*/
body {
/*width: 45em;*/
border: 1px solid #ddd;
outline: 1300px solid #fff;
margin: 16px auto;
}

2.添加样式

接下来在CSS中添加如下样式。

/*左边目录框的样式*/
.left-div
{
height: 80%; /*目录框的高度*/
float:left;/*目录框的位置*/
overflow-y:scroll;/*目录框添加滚动条*/
padding-right: 10px;
position: fixed;/*目录框相对浏览器进行定位*/
width:17%;/*目录框的宽度*/
}
/*右边正文的样式*/
.right-div
{
float:right;/*正文的位置*/
padding-left: 10px;/*边距*/
width:80%;/*正文的宽度*/
}

第五步,修改HTML

修改完了CSS部分之后,开始修改HTML部分

实现将将[TOC]生成的目录部分添加到下面的div中

或者可以给目录的div标签添加“class=‘left-div’”

<div class="left-div">
这里是[TOC]命令生成的目录
</div>

再在将剩下的正文部分添加到下面的div中

<div class="right-div">
这里是正文部分
</div>

这样就完成了所有修改。

总结

所有修改完成后应该就可以生成左边目录了。

修改后的HTML文件框架如下:

<html>
<head>
<style>
body
{
/*width: 45em;*/
border: 1px solid #ddd;
outline: 1300px solid #fff;
margin: 16px auto;
}
.left-div
{width:17%;
float:left;
padding-right: 10px;
position: fixed;
overflow-y:scroll;
height: 80%}
.right-div
{
width:80%;
float:right;
padding-left: 10px;
}
</style>
</head>
<body>
<!--article标签中就是我们编写的文本内容-->
<article>
<div class="left-div">这里是[TOC]命令生成的目录</div>
<div class="right-div">这里是正文部分</div>
</article>
</body>
</html>

Markdown生成左边框目录的更多相关文章

  1. markdown转HTML,目录生成

    1.首先,准备好已经编辑好的markdown文件放到指定目录下. 2.下载node.js,下载地址:https://nodejs.org/en/download/ 3.下载好node.js文件后,配置 ...

  2. Pandoc+markdown生成slides

    Pandoc+markdown生成slides 参考:http://blog.csdn.net/pizi0475/article/details/50955900 1.安装 http://pandoc ...

  3. iOS开发——多线程篇——快速生成沙盒目录的路径,多图片下载的原理、SDWebImage框架的简单介绍

    一.快速生成沙盒目录的路径 沙盒目录的各个文件夹功能 - Documents - 需要保存由"应用程序本身"产生的文件或者数据,例如:游戏进度.涂鸦软件的绘图 - 目录中的文件会被 ...

  4. JQuery内容从左边框移到右边框

    最近感觉学习挺紧的.JQuery没有学几天就又开始学习AngularJS了.学习的时候都是看着老师用着很简单,自己写的时候就觉得不太会用.但是学习AngularJS的时候有很多问题,我觉得不管是学习J ...

  5. TextField的文字距左边框的距离偏移

    默认情况下,当向textField输入文字时,文字会紧贴在textField左边框上. 我们可以通过设置textField的leftView,设置一个只有宽度的leftView. 这样还不够,因为默认 ...

  6. WM_SYSCOMMAND包括很多功能,比如:拖动左边框、拖动标题栏、滚动条滚动、点击最小化、双击标题栏——Delphi 通过事件代替了大部分常用的消息,所以Delphi 简单、易用、高效

    procedure TForm1.WMSysCommand(var Message: TWMSysCommand); var str: string; begin case Message.CmdTy ...

  7. markdown生成的a标签如何在新页面打开

    原始的超链接语法这样写:[超链接的名字](url) 在新窗口中打开:[超链接的名字](url?_blank) 在本窗口中打开:[超链接的名字](url?_self)默认是在本窗口中打开 但上面的说法貌 ...

  8. CSS 如何让Table的里面TD全有边框 而Table的右左边框没有

    比如这样一个CSS.td3{font-size: 14px;color: #FFFFFF;background-color: #000000;BORDER-RIGHT: #f6f6f6 1px sol ...

  9. JavaScript--获取页面盒子中鼠标相对于盒子上、左边框的坐标

    分析: 外层边框是浏览器边框,内部盒子是页面的一个盒子,绿点是盒子中鼠标的位置.鼠标相对盒子边框的坐标=页面中(注意不是浏览器)鼠标坐标-盒子相对于浏览器边框的偏移量 第一步:求浏览器边框位置 x=e ...

随机推荐

  1. python多线程网络编程

    背景 使用过flask框架后,我对request这个全局实例非常感兴趣.它在客户端发起请求后会保存着所有的客户端数据,例如用户上传的表单或者文件等.那么在很多客户端发起请求时,服务器是怎么去区分不同的 ...

  2. OutputCache属性详解(一)一Duration、VaryByParam

    目录 OutputCache概念学习 OutputCache属性详解(一) OutputCache属性详解(二) OutputCache属性详解(三) OutputCache属性详解(四)— SqlD ...

  3. easyui combotree下拉框多选赋值

    发现jquery.easyui.min.js 1.3.4版本的用setValues给多选下拉框赋值不成功,只能用1.3.1版本的 Html代码: <input id="ProductL ...

  4. angularjs decorator

    angularjs decorator https://docs.angularjs.org/guide/decorators decorator() $provide服务提供了在服务实例创建时对其进 ...

  5. Python的闭包

    Python的闭包 闭包概念都是一样的,实现机制一样,看看下面的代码是不是和javascript很像 def generate_counter(): cnt = [0] def count_one() ...

  6. Linq 查询结果 可能遵循 2 º,2¹,2 ²,......增长计算

    static void Main(string[] args) { , , , , , , , , }; var obj = from item in array orderby item ascen ...

  7. JQ动画的简单介绍

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>j ...

  8. 前端工程师技能之photoshop巧用系列扩展篇——自动切图

    × 目录 [1]初始设置 [2]自动切图 前面的话 随着photoshop版本的不断升级,软件本身增加了很多新的功能,也为切图工作增加了很多的便利.photoshop最新的版本新增了自动切图功能,本文 ...

  9. codeforces——Little Pony and Expected Maximum

    /* 我们枚举每次选择最大数值的情况:m个数, 投掷n次 最大值是1: 1种 2: 2^n-1 3: 3^n-2^n ..... m: m^n-(m-1)^n 所以最后的结果=sum((k/m)^n ...

  10. c#用socket异步传输字符串

    再次特别感谢张子阳老师的文章,是我深感益处. 在前一篇文章中可以看到,尽管消息分成了三条单独发送,但是服务端却将后两条合并成了一条.对于这些情况,我们可以这样处理:就好像HTTP协议一样,在实际的请求 ...