打造你的专属主题-VitePress保姆级教程

news2024/11/18 23:38:18

本篇为vitepress系列教程,在开始前,若还不了解vitepress的小伙伴可以看一下以往文章:
不敲一行代码!助你快速搭建属于自己的官网博客!-VitePress保姆级教程

文章目录

      • VitePress主题配置
      • 准备
      • 自定义主题配置
        • 标题配置
        • 图标背景
        • 按钮主题
        • 主题色配置

VitePress主题配置

本文将带你快速配置vitepress中的主题
在这里插入图片描述

准备

我们首先要在.vitepress文件夹下新建theme文件夹
在这里插入图片描述

1、在theme文件夹下新建index.mtsindex.mts作为theme的入口文件,vitepress会自动解析theme文件夹下的index.mts文件。

2、在theme文件夹下新建style文件夹,style文件夹用于自定义配置。
在这里插入图片描述

3、在style文件夹下新建index.css,作为style的入口文件,引入var.css文件。

4、在style文件夹下新建var.css,该文件就是自定义主题配置文件。
在这里插入图片描述

到这一步,文件的引用路径已经准备好了,剩下的就是在theme/style/var.css中写自定义主题即可。

自定义主题配置

下面的所有配置都在var.css文件中实现。

标题配置

在这里插入图片描述

可以配置成纯色或渐变色

    :root {
      /* 标题 */
      --vp-home-hero-name-color: transparent;
      /* 渐变色 */
      --vp-home-hero-name-background: linear-gradient(
        135deg,
        #76c4fd 10%,
        #bbe2fe 100%
      );
      /* 纯色 */
      /* --vp-home-hero-name-background: red; */
    }
图标背景

此处是给右侧的大图标设置背景色,一般我们会喜欢用渐变色实现,看起来视觉效果更好。

    :root {
      /* 图标背景 */
      /* 设置线性渐变 */
      --vp-home-hero-image-background-image: linear-gradient(
        135deg,
        #bbe2fe 10%,
        #76c4fd 100%
      );
    }

在这里插入图片描述

此时渐变色已经出来了,但是看起来非常突兀

我们需要设置filter属性,让元素模糊起来,通过元素检查可以看出来,图片和我们设置的背景是分来的两个元素,所以我们给div设置filter并不影响img图标,抓鲁迅(div)关周树人(img)什么事?
在这里插入图片描述

    :root {
      /* 图标背景 */
      /* 设置线性渐变 */
      --vp-home-hero-image-background-image: linear-gradient(
        135deg,
        #bbe2fe 10%,
        #76c4fd 100%
      );
      /* 设置模糊度 */
      --vp-home-hero-image-filter: blur(150px);
    }

在这里插入图片描述

具体的渐变色、渐变角度、模糊大小各位可以按照实际需求自行调整。

按钮主题
    :root {
      /* brand按钮 */
      /* 正常 */
      --vp-button-brand-text: red; /* 文字色 */
      --vp-button-brand-border: green; /* 边框色 */
      --vp-button-brand-bg: #43aefc; /* 背景色 */

      /* hover状态 */
      --vp-button-brand-hover-text: #fff;
      --vp-button-brand-hover-border: #75c4fe;
      --vp-button-brand-hover-bg: #75c4fe;

      /* active状态-点击 */
      --vp-button-brand-hover-text: gold;
      --vp-button-brand-hover-border: #43aefc;
      --vp-button-brand-active-bg: #43aefc;
    }

在这里插入图片描述

当然,文字的默认色是白色,边框色可以和背景色一致,可以改成下面这样

    :root {
      /* brand按钮 */
      /* 正常 */
      --vp-button-brand-border: #43aefc; /* 边框色 */
      --vp-button-brand-bg: #43aefc; /* 背景色 */

      /* hover状态 */
      --vp-button-brand-hover-border: #75c4fe;
      --vp-button-brand-hover-bg: #75c4fe;

      /* active状态-点击 */
      --vp-button-brand-hover-border: #43aefc;
      --vp-button-brand-active-bg: #43aefc;
    }

在这里插入图片描述

主题色配置

项目中默认的主题色为紫色,我们可以通过配置修改项目默认主题色
在这里插入图片描述

:root {
  /* 主题色 */
  --vp-c-indigo-1: #43aefc; /* 主题色 */
  --vp-c-indigo-2: #43aefc; /* 主题色-hover */
  --vp-c-indigo-3: #43aefc;
}

主题色修改后会应用到全局,text激活色、章节高亮、url链接等色彩都会应用。

到这里,你的项目主题应该配置的差不多了,下一篇我将会介绍页面的跳转、章节跳转、上下页切换、如下:
在这里插入图片描述

另外,我也将本文档的源码开放,大家可以在上面查看具体配置,也可以直接将源码当作模板自定义修改。

仓库:VitePress-保姆级模板

感兴趣的朋友也可以支持一下其它项目,这将是对我极大的鼓励与支持。

仓库:SnowAdmin清新优雅的管理后台


参考文献:

vite-press: custom-theme

css: linear-gradient

css: filter

vitepress官方文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2162134.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何用AI实现自动更新文章?(全自动更新网站)

AI的诞生确实给我们的生活和工作都带来了很大的改变,从我自身来讲,也渐渐习惯了遇到事情先问问AI,不管是翻译、专业性问题、PPT制作、总结写作这些,确实帮我迅速理清了思路,也可以有很多内容的借鉴。 作为一个业余爱好…

滑动窗口算法第一弹(长度最小的子数组,无重复字符的最长子串 最大连续1的个数III)

目录 前言 1. 长度最小的子数组 (1)题目及示例 (2)暴力解法 (3)优化 2. 无重复字符的最长子串 (1)题目及示例 (2)暴力解法 (3&#xff…

深度学习:卷积神经网络CNN

目录 一、什么是卷积? 二、卷积神经网络的组成 1. 卷积层 2. 池化层 3. 激活函数 4. 全连接层 三、卷积神经网络的构造 四、代码实现 1.数据预处理 2.创建卷积神经网络 3.创建训练集和测试集函数 4.创建损失函数和优化器并进行训练 一、什么是卷积&…

Kivy,一个上天入地的 Python 库

大家好!我是炒青椒不放辣,关注我,收看每期的编程干货。 一个简单的库,也许能够开启我们的智慧之门, 一个普通的方法,也许能在危急时刻挽救我们于水深火热, 一个新颖的思维方式,也许能…

USB 电缆中的信号线 DP、DM 的缩写由来

经常在一些芯片的规格书中看到 USB 的信号对是以 DP 和 DM 命名: 我在想,这些规格书是不是写错了,把 N 写成 M 了?DM 中的 M 到底是什么的缩写? 于是我找了一些资料,终于在《Universal Serial Bus Cables …

string 的介绍及使用

一.string类介绍 C语言中,字符串是以’\0’结尾的一些字符的集合,为了操作方便,C标准库中提供了一些str系列的库函数,但是这些库函数与字符串是分离开的,不太符合OOP的思想,而且底层空间需要用户自己管理&a…

BUUCTF [SCTF2019]电单车详解两种方法(python实现绝对原创)

使用audacity打开,发现是一段PT2242 信号 PT2242信号 有长有短,短的为0,长的为1化出来 这应该是截获电动车钥匙发射出的锁车信号 0 01110100101010100110 0010 0前四位为同步码0 。。。中间这20位为01110100101010100110为地址码0010为功…

ssm病人跟踪治疗信息管理系统

专业团队,咨询就送开题报告,欢迎大家咨询留言 摘 要 病人跟踪治疗信息管理系统采用B/S模式,促进了病人跟踪治疗信息管理系统的安全、快捷、高效的发展。传统的管理模式还处于手工处理阶段,管理效率极低,随着病人的不断…

《SG-Former: Self-guided Transformer with Evolving Token Reallocation》ICCV2023

摘要 SG-Former(Self-guided Transformer)是一种新型的视觉Transformer模型,旨在解决传统Transformer在处理大型特征图时面临的计算成本高的问题。该模型通过一种自适应细粒度的全局自注意力机制,实现了有效的计算成本降低。它利…

VmWare安装虚拟机教程(centos7)

VMWare下载: 下载 VMware Workstation Pro - VMware Customer Connect 安装包:(16的版本)免费!(一个赞就行) 一直点下一步即可,注意修改一下安装位置就好 二、安装虚拟机 安装虚…

鸭脖变“刺客”,啃不起了

撰文|ANGELICA 编辑|ANGELICA 审核|烨 Lydia 声明|图片来源网络。日晞研究所原创文章,如需转载请留言申请开白。 你有多久没吃卤味了? 2020年之后,人们对于几大卤味巨头的关注度正在下降。 …

视频字幕生成:分享6款专业易操作的工具,让创作更简单!

​视频字幕如何添加?日常剪辑Vlog视频时,就需要给视频添加上字幕了。字幕是一个比较重要的元素,它不仅可以帮助听力受损或语言障碍的人士理解内容,还可以让你的视频更加易于理解和吸引观众。 那么如何实现视频字幕生成&#xff0c…

【LLaMa2入门】从零开始训练LLaMa2

目录 1 背景2 搭建环境2.1 硬件配置2.2 搭建虚拟环境2.2.1 创建虚拟环境2.2.2 安装所需的库 3 准备工作3.1 下载GitHub代码3.2 下载模型3.3 数据处理3.3.1 下载数据3.3.2 数据集tokenize预处理 4 训练4.1 修改配置4.2 开始训练4.3 多机多卡训练 5 模型推理5.1 编译5.1.1 安装gc…

ResNet18模型扑克牌图片预测

加入会员社群,免费获取本项目数据集和代码:点击进入>> 1. 项目简介 该项目旨在通过深度学习技术,使用ResNet18模型对扑克牌图像进行预测与分类。扑克牌图片分类任务属于图像识别中的一个应用场景,要求模型能够准确识别扑克…

【python篇】python pickle模块一篇就能明白,快速理解

持久性就是指保持对象,甚至在多次执行同一程序之间也保持对象。通过本文,您会对 Python对象的各种持久性机制(从关系数据库到 Python 的 pickle以及其它机制)有一个总体认识。另外,还会让您更深一步地了解Python 的对象…

音视频入门基础:FLV专题(5)——FFmpeg源码中,判断某文件是否为FLV文件的实现

一、引言 通过FFmpeg命令: ./ffmpeg -i XXX.flv 可以判断出某个文件是否为FLV文件: 所以FFmpeg是怎样判断出某个文件是否为FLV文件呢?它内部其实是通过flv_probe函数来判断的。从《FFmpeg源码:av_probe_input_format3函数和AVI…

Serilog文档翻译系列(五) - 编写日志事件

日志事件通过 Log 静态类或 ILogger 接口上的方法写入接收器。下面的示例将使用 Log 以便语法简洁,但下面显示的方法同样可用于接口。 Log.Warning("Disk quota {Quota} MB exceeded by {User}", quota, user); 通过此日志方法创建的警告事件将具有两个相…

mes系统在中小企业智能制造作用

MES系统(制造执行系统)在中小企业智能制造中扮演着至关重要的角色,其作用主要体现在以下几个方面: 1. 提升生产效率与质量 实时监控与数据采集:MES系统能够实时采集生产现场的各项数据,如设备状态、生产进…

nmap 命令:网络扫描

一、命令简介 ​nmap​(Network Mapper)是一个开放源代码的网络探测和安全审核的工具。它最初由Fyodor Vaskovich开发,用于快速地扫描大型网络,尽管它同样适用于单个主机。 ​nmap​的功能包括: 发现主机上的开放端…

电信、移动、联调等运营商都有那些国产化自研软件

国产化自研软件方面有着积极的探索和实践,包括操作系统、数据库和中间件等,电信运营商在国产化软件方面取得了显著进展: 操作系统: 中国电信推出了基于华为欧拉openEuler开源系统的天翼云操作系统CTyunOS,已上线部署5万…