在markdown语法的插入图片功能中,是天生不支持设置图片居中以及图片显示宽高这些属性的。好在markdown是支持html语法的,因此曲线救国的办法倒是相当多,下面介绍两种实现markdown中图片水平居中的办法,不然写博文时,图片总是靠左显示。
首先,在markdown语法中,插入图片的基本语法是:
![Alt text](链接 [optional title])
其中,Alt text图片的Alt标签,主要是对图片进行描述,在前端代码中,给img标签添加alt的意义,主要是当图片因为各种原因导致无法显示时,可以用该文字来代替显示,也被用于优化SEO,可以引导搜索引擎根据Alt text的内容来搜索到该图片。而optional title是鼠标悬停在图片区域时显示的标题文字,一般可以忽略。
因此markdown语法插入图片的格式一般是:
1 | ![avatar](/post/img/xxx.png) //插入本地图片 |
第一种方式,在需要markdown插入图片代码的外层包裹center元素
1 | <center>![avatar](https://cdn.jsdeliver.net/xxx.png)</center> |
这种方式,在每次插入图片时,都要在外层包裹center元素,较为麻烦,如果平时很少插入图片,可以用这个方法解决。
第二种方式,属于是比较一劳永逸的法子。主要就是修改hexo博客主题中的css样式,来达到图片水平居中效果
因为markdown插入图片的代码,在最终渲染的时候,其实是变为了html中的img元素。因此我们可以直接去博客主题文件的源代码中,找到控制文章内图片显示样式的css代码,将其修改成水平居中即可。前端编程中修改水平居中的方法非常多,这里只介绍一种。
一般情况下,我们可以在hexo博客文件夹进入到主题模板的themes->(主题名称文件夹)->source->css->_partial中,找到post.styl文件,该post文件中保存的就是文章详情页里面的显示样式。然后找到里面正确的img元素,修改其样式,主要是增加’margin 0 auto’这一行代码即可。如下:
1 | .post-content |
这样一来,文章里只要插入图片,就是自动水平居中了。不需要每次手动输入任何代码来居中,一劳永逸。
根据每个人选择的主题模板的差异,这个控制img元素的代码不一定就在post这个名字的文件中,还是需要自己根据线索寻找一下。