next主题搭建相册(无需安装插件,代码即可实现)
最近在搭建博客的过程中,想要实现相册功能,找了很多资料,都是说要使用插件或者脚本,我花了很多时间,跟着这些资料去做,但是都没实现,但是我没有放弃,后来终于找到一篇文章,通过这篇文章,终于实现了,也正是这篇文章,使得我对于博客的网页设计有了更高的理解。
个人认为,用这种方法思路很清晰,通过代码的方式,一步一步搭建相册,不像其他教程,很多操作都不懂什么原理,耐心看完整篇文章,相信你也能和我一样彻底了解相册功能的实现。
本人博客实现效果:相册 | 罗先生 (yuansec.top)https://www.yuansec.top/photos/
一、准备图床
由于本人是通过github搭建的网站,而且相册功能图片比较多,不推荐使用本地上传图片,这样加载太慢,会导致你的网站加载也变慢,通过图床加速可以大大提高图片加载速度,以致于不拖累你爹网站的加载速度(如果你和我一样都是用的github,网站的图片最好都用图床链接)
图床这里我个人有两个方案
1、维格表
具体使用可参考本人之前的一篇文章
免费图床方案-维格表_yuansec的博客-CSDN博客
2、路过图床(推荐)
路过图床 - 免费图片上传, 专业图片外链, 免费公共图床
推荐理由:简单好用,且速度也快
一、添加相册板块
1、首先创建一个相册的图标
这一步就不细说了,不会的可以自己去找教程,或者参考我之前发的一篇文章
next主题自定义侧边栏链接图标(新方法)_yuansec的博客-CSDN博客
2、添加相册板块
博客根目录下输入代码
hexo new page photos
会在博客根目录source文件夹下生成一个photos文件夹,点进去,里面有一个index.md文件,打开这个文件,将标题改为相册(你想要叫的名字),类型设置为photos
接着打开\themes\next目录下的_config.yml文件,找到menu,添加photos这一栏
最后,还要设置以下中文,打开\themes\next\languages目录下的zh-CN.yml文件,添加中文
二、设计相册主页
1、添加相册主页主题配置文件
打开\themes\next\source\css下的main.styl文件,添加以下代码
/*相册主页面*/
.photos-page {margin-top: -50px;
}.photos-list {display: flex;//指定容器flex-direction: row;//水平为主轴flex-wrap: nowrap;//不自动换行justify-content: space-between;//两侧对其align-items: flex-start;//水平对齐
}
.photos-column a {border-bottom: 0px;
}
.photos-item {margin-bottom: -50px
}
/*相册标题样式*/
.photos-item p {margin: -25px auto -10px;max-width: 50%;text-align: center;font-size: 15px;color: $black-deep;background: rgba(255,255,255,.3);border-radius: 7px;border: 1px solid $black-deep;box-shadow: 0 8px 20px -8px rgba(0,0,0,.3);
}
/*相册封面显示以及点击面积*/
.photos-column a img {height: 250px;width: 300px;object-fit: cover;
}
2、添加相册
在根目录\source\photos文件夹下新建几个文件夹,我这里的代码是3个,你可以建三个文件夹,也可以增减代码,然后打开index.md文件添加代码
---
title: 相册
type: photos
---
<div class="photos-page"><div class="photos-list"><div class="photos-column"><div class="photos-item"><a href="photos目录下的相册文件名1"><img src="图床url链接"></a><br><p>-相册名1-</p></div></div><div class="photos-column"><div class="photos-item"><a href="photos目录下的相册文件名2"><img src="图床url链接"></a><br><p>-相册名2-</p></div></div><div class="photos-column"><div class="photos-item"><a href="photos目录下的相册文件名3"><img src="图床url链接"></a><br><p>-相册名3-</p></div></div></div>
</div>
<br>
<br>
将代码中"photos目录下的相册文件名1"改成你建的文件名,将"图床url链接"改为你的图片的图床url链接即可。
三、添加子相册
1、添加子相册主题样式文件
打开\themes\next\source\css下的main.styl文件,添加以下代码
.img-list{display: flex;flex-direction: column;//垂直为主轴
}
.img-column {display: flex;flex-direction: row;flex-wrap: nowrap;justify-content: space-between;align-items: flex-start
}
.img-column a{border-bottom: 0px;
}
/*图片显示面积*/
.img-column a img {height: 280px;width: 330px;object-fit: scale-down;
}
2、添加图片
随便打开photos目录下的某个相册文件,新建一个index.md文件
添加代码
<div class="photos-page"><div class="img-list"><div class="img-column"><img src="图床url链接"></a><img src="图床url链接"></a><img src="图床url链接"></a></div><div class="img2-column"><img src="图床url链接"></a> <img src="图床url链接"></a></div></div>
</div>
将"图床url链接"改为图片的链接即可
四、图片点击放大效果
先切到next/source/lib目录下,下载插件
git clone https://github.com/theme-next/theme-next-fancybox3 fancybox
更改next/_config.yml文件
fancybox: true
总结
总体的设计思路
创建相册功能板块——设计相册主页显示样式——添加子相册——设计子相册图片显示样式——添加图片到各个子相册
大体的思路就是这样,不难理解,而且所有过程都是通过自己写代码构建的,不需要去下载任何插件和脚本,如果最后显示结果和我的有出路的话,可以看下这篇文章,了解网页布局的真正原理
30 分钟学会 Flex 布局 - 知乎 (zhihu.com)
next主题搭建相册(无需安装插件,代码即可实现)相关推荐
- 一键开启mysql的审计功能(无需安装插件)
本文所使用数据库为mysql8.0,5.x版本的mysql上没试过一下步骤调用审计功能 无需下载任何插件,两行命令就能搞定 一.首先查看审计配置情况 show global variables lik ...
- java 视频压缩_Java 压缩视频(无需安装插件)
亲测可用,基于ffmpeg 去进行压缩, 测试原视频大小:835.87 MB 压缩后大小:118.8 MB 压缩比率 :85.78% 好了,开始上代码 1.首先 pom文件中引入下面两个 jar 包 ...
- 使用Chrome浏览器实现网页长截图 无需安装插件
有些网页比较长,一屏装不下,需要拉动滚动条才行,这种网页我们想截图截取全部内容时就比较困难 如果使用的是Chrome浏览器,可以使用如下方法截图: 打开网页后 按快捷键 F12 打开移动设备预览模式( ...
- 一款无需写任何代码即可一键生成前后端代码的开源工具
JeecgBoot 是一款基于代码生成器的低代码开发平台,零代码开发.JeecgBoot 采用开发模式:Online Coding 模式-> 代码生成器模式-> 手工 MERGE 智能开发 ...
- 无需安装任何软件即可在个人电脑中创建隐私空间的方法
按照以下方法操作能够实现在电脑硬盘或U盘中创建一个保密空间,不需要安装任何软件,可以随时打开或隐藏,非常方便. 步骤: 1.在个人电脑中建立一个txt文档: 2.打开txt,拷贝以下代码放入文档中保存 ...
- 无需编写任何代码即可使用 AI 创建新漫画,关于如何使用 GPT-3 和 DALL-E 为有趣页面生成原创内容的教程
上个月我探索了如何使用 OpenAI 的GPT-3文本生成器和他们的DALL-E图像到文本系统来创建新的连环画,而无需编写任何源代码.请注意,这两个系统都处于测试阶段,在我使用了所有免费代币后,他们开 ...
- iPhone Android主题,iPhone终于可以换主题了!还能一键体验安卓系统,无需任何插件...
原标题:iPhone终于可以换主题了!还能一键体验安卓系统,无需任何插件 众所周知,iOS和安卓是当今手机系统里的两大阵营,而作为科技数码爱好者,只要不是囊中羞涩,一般都会选择购买两款手机,一款安卓一 ...
- android一键 iphone6s,iPhone终于可以换主题了!还能一键体验安卓系统,无需任何插件...
众所周知,iOS和安卓是当今手机系统里的两大阵营,而作为科技数码爱好者,只要不是囊中羞涩,一般都会选择购买两款手机,一款安卓一款苹果,这也就是我们口中常说的双机党. 小雷就是一名双机党,一边是生活,一 ...
- eclipse+安卓SDK+jdk 搭建安卓开发环境(无需安装ADT插件)
本文环境搭建用到的相应的包在我的资源中都能下载: 1.首先安装JDK a.建议安装JDK1.8,提供的资源下载中也是JDK1.8的安装包: b.双击JDK安装包会出现第一个安装路径进行选择,此路径为J ...
最新文章
- 某员工在工作群回复领导“OK”,被领导批不懂规矩!直接开除!
- Android框架之路——EventBus的使用
- Trailblazer —— Rails 的扩展概念驱动开发框架
- 半吊子菜鸟学Web开发 -- PHP学习 4 --异常
- 设置IDEA中各种线条颜色
- Jad一个好东西(转载)
- TF之p2p:基于TF利用p2p模型部分代码实现提高图像的分辨率
- RecycleView的正确打开方式
- iOS 本地化应用程序汇总 国际化
- 对python的功能和扩展功能的认知_Python基础-基础认知和库了解
- java 两数之差_1_两数之和(java)
- 将mysql中的数据库表导出和导入
- Adobe Premiere 基本使用
- 五款app原型设计工具对比
- 【好文翻译】10个免费的压力测试工具(Web)
- 软件项目管理 2.1.项目立项
- Java根据身份证号或者出生日期计算年龄
- 阿里云服务器续费坑啊早知道不买了
- openstack kolla 安装报错
- https证书申请流程和简介
热门文章
- geoJson全国各省市地图json数据获取
- StrangIOC框架一
- 鸿蒙os能支持c语言吗,再次确认华为鸿蒙OS系统采用C预言开发,流畅度相当ios
- 下列签名无效: EXPKEYSIG CDFB5FA52007B954 Metasploit 解决办法
- 消防应急疏散指示系统在某生物制药工厂项目的应用
- 小米也打价格战?会有1999的小米2吗?
- (课程笔记)| 林轩田机器学习基石入门(一)
- GitHub Actions入门教程:自动化部署静态博客
- Yocto系列讲解[理论篇] 3 - meta layer recipe class概念介绍
- STM32单片机实现连接USB摄像头