mirror of
https://github.com/kuohuanhuan/x-markdown-css.git
synced 2024-11-25 06:18:19 +00:00
Compare commits
2 Commits
dependabot
...
v0.0.5
Author | SHA1 | Date | |
---|---|---|---|
3e1fb0425a
|
|||
e12c48b107
|
8
.github/workflows/ci.yml
vendored
8
.github/workflows/ci.yml
vendored
@ -4,12 +4,6 @@ on:
|
|||||||
push:
|
push:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- master
|
||||||
paths:
|
|
||||||
- src/**.scss
|
|
||||||
- package.json
|
|
||||||
- Gruntfile.coffee
|
|
||||||
- .stylelintrc
|
|
||||||
- .stylelintignore
|
|
||||||
pull_request:
|
pull_request:
|
||||||
branches:
|
branches:
|
||||||
- master
|
- master
|
||||||
@ -27,7 +21,7 @@ jobs:
|
|||||||
- name: Setup Node.js
|
- name: Setup Node.js
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
node-version: lts/*
|
node-version: 18
|
||||||
registry-url: https://registry.npmjs.com
|
registry-url: https://registry.npmjs.com
|
||||||
# Step III
|
# Step III
|
||||||
- name: Install Dependencies
|
- name: Install Dependencies
|
||||||
|
10
.github/workflows/release.yml
vendored
10
.github/workflows/release.yml
vendored
@ -1,15 +1,15 @@
|
|||||||
name: Release
|
name: Build and Release
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
tags:
|
tags:
|
||||||
- v*
|
- 'v*'
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
# NPM Registry & GitHub Release
|
# NPM Registry & GitHub Release
|
||||||
release:
|
release:
|
||||||
# Use Windows Server 2022
|
# Use Ubuntu 22.04 LTS
|
||||||
runs-on: windows-2022
|
runs-on: ubuntu-22.04
|
||||||
steps:
|
steps:
|
||||||
# Step I
|
# Step I
|
||||||
- name: Get Source Code
|
- name: Get Source Code
|
||||||
@ -20,7 +20,7 @@ jobs:
|
|||||||
- name: Setup Node.js
|
- name: Setup Node.js
|
||||||
uses: actions/setup-node@v3
|
uses: actions/setup-node@v3
|
||||||
with:
|
with:
|
||||||
node-version: lts/*
|
node-version: 18
|
||||||
registry-url: https://registry.npmjs.com
|
registry-url: https://registry.npmjs.com
|
||||||
# Step III
|
# Step III
|
||||||
- name: Install Dependencies
|
- name: Install Dependencies
|
||||||
|
19
.stylelintrc
19
.stylelintrc
@ -1,4 +1,21 @@
|
|||||||
{
|
{
|
||||||
"ignoreDisables": true,
|
"ignoreDisables": true,
|
||||||
"extends": "@kuohuanhuan/stylelint-config"
|
"extends": [
|
||||||
|
"stylelint-config-standard-scss",
|
||||||
|
"stylelint-config-hudochenkov/order"
|
||||||
|
],
|
||||||
|
"plugins": ["stylelint-scss"],
|
||||||
|
"rules": {
|
||||||
|
"alpha-value-notation": "number",
|
||||||
|
"at-rule-empty-line-before": null,
|
||||||
|
"block-no-empty": true,
|
||||||
|
"color-named": "never",
|
||||||
|
"color-hex-case": "lower",
|
||||||
|
"import-notation": null,
|
||||||
|
"max-nesting-depth": 5,
|
||||||
|
"no-invalid-position-at-import-rule": null,
|
||||||
|
"number-leading-zero": "never",
|
||||||
|
"property-no-vendor-prefix": true,
|
||||||
|
"rule-empty-line-before": null
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
32
README.md
32
README.md
@ -14,9 +14,37 @@
|
|||||||
|
|
||||||
According to [.browserslistrc](https://github.com/kuohuanhuan/x-markdown-css/blob/master/.browserslistrc), `x-markdown-css` supports **all browsers support CSS variables.**
|
According to [.browserslistrc](https://github.com/kuohuanhuan/x-markdown-css/blob/master/.browserslistrc), `x-markdown-css` supports **all browsers support CSS variables.**
|
||||||
|
|
||||||
## Get Started
|
## Usage
|
||||||
|
|
||||||
Visit the [Wiki](https://github.com/kuohuanhuan/x-markdown-css/wiki) page for more information.
|
You can use `x-markdown-css` with:
|
||||||
|
|
||||||
|
1. A CDN service:
|
||||||
|
|
||||||
|
- UNPKG: `https://unpkg.com/x-markdown-css`
|
||||||
|
- jsDelivr: `https://fastly.jsdelivr.net/npm/x-markdown-css`
|
||||||
|
- CDNJS: *Coming soon. **Waiting for you to make `x-markdown-css` [popular enough](https://github.com/cdnjs/packages/blob/master/CONTRIBUTING.md#policy-rules-and-guidelines)**!*
|
||||||
|
|
||||||
|
> *ps. Note that `bundle.css` without `.min` stands for unminified version.*
|
||||||
|
|
||||||
|
1. A CSS (with Node.js) / Sass / SCSS project:
|
||||||
|
|
||||||
|
First, install it with NPM ([PNPM](https://pnpm.io) or [Yarn](https://yarnpkg.com) also works):
|
||||||
|
|
||||||
|
```sh
|
||||||
|
npm i x-markdown-css@latest
|
||||||
|
```
|
||||||
|
|
||||||
|
Then, add it to your `.css` / `.sass` / `.scss` file.
|
||||||
|
|
||||||
|
For example, in CSS / SCSS you do:
|
||||||
|
|
||||||
|
```css
|
||||||
|
@import 'x-markdown-css';
|
||||||
|
```
|
||||||
|
|
||||||
|
> *ps. Note that no path or file extention is required
|
||||||
|
> since the `style` and `sass` field in `package.json` is filled.
|
||||||
|
> Just simply use `'x-markdown-css'` to import it.*
|
||||||
|
|
||||||
## Built with
|
## Built with
|
||||||
|
|
||||||
|
1881
package-lock.json
generated
1881
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
16
package.json
16
package.json
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "x-markdown-css",
|
"name": "x-markdown-css",
|
||||||
"version": "0.1.6",
|
"version": "0.0.5",
|
||||||
"description": "A simple and customizable markdown CSS stylesheet for everyone.",
|
"description": "A simple and customizable markdown CSS stylesheet for everyone.",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"markdown",
|
"markdown",
|
||||||
@ -23,11 +23,7 @@
|
|||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/kuohuanhuan/x-markdown-css.git"
|
"url": "git+https://github.com/kuohuanhuan/x-markdown-css.git"
|
||||||
},
|
},
|
||||||
"author": {
|
"author": "kuohuanhuan",
|
||||||
"name": "kuohuanhuan",
|
|
||||||
"email": "hi@nekohuan.cyou",
|
|
||||||
"url": "https://nekohuan.cyou"
|
|
||||||
},
|
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"bugs": {
|
"bugs": {
|
||||||
"url": "https://github.com/kuohuanhuan/x-markdown-css/issues"
|
"url": "https://github.com/kuohuanhuan/x-markdown-css/issues"
|
||||||
@ -47,16 +43,18 @@
|
|||||||
"sass": "^1.58.3"
|
"sass": "^1.58.3"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@kuohuanhuan/stylelint-config": "^0.0.5",
|
|
||||||
"@lodder/grunt-postcss": "^3.1.1",
|
"@lodder/grunt-postcss": "^3.1.1",
|
||||||
"autoprefixer": "^10.4.13",
|
"autoprefixer": "^10.4.13",
|
||||||
"bumpp": "^9.0.0",
|
"bumpp": "^9.0.0",
|
||||||
"cssnano": "^6.0.0",
|
"cssnano": "^5.1.15",
|
||||||
"grunt": "^1.6.1",
|
"grunt": "^1.6.1",
|
||||||
"grunt-sass": "^3.1.0",
|
"grunt-sass": "^3.1.0",
|
||||||
"load-grunt-tasks": "^5.1.0",
|
"load-grunt-tasks": "^5.1.0",
|
||||||
"postcss": "^8.4.21",
|
"postcss": "^8.4.21",
|
||||||
"postcss-preset-env": "^8.0.1",
|
"postcss-preset-env": "^8.0.1",
|
||||||
"stylelint": "^15.2.0"
|
"stylelint": "^15.2.0",
|
||||||
|
"stylelint-config-hudochenkov": "^9.0.0",
|
||||||
|
"stylelint-config-standard-scss": "^7.0.1",
|
||||||
|
"stylelint-scss": "^4.4.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,7 +0,0 @@
|
|||||||
@use 'sass:meta';
|
|
||||||
@use 'partials/container';
|
|
||||||
|
|
||||||
.markdown-body {
|
|
||||||
@include container.container;
|
|
||||||
@include meta.load-css('partials/all');
|
|
||||||
}
|
|
@ -1,22 +0,0 @@
|
|||||||
@use 'sass:meta';
|
|
||||||
@use 'variables/constants';
|
|
||||||
@use 'variables/modes/light';
|
|
||||||
@use 'variables/modes/dark';
|
|
||||||
|
|
||||||
:root {
|
|
||||||
@each $name, $val in meta.module-variables('constants') {
|
|
||||||
--xm-#{$name}: #{$val};
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.markdown-body {
|
|
||||||
@each $name, $val in meta.module-variables('light') {
|
|
||||||
--xm-c-#{$name}: #{$val};
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.dark .markdown-body {
|
|
||||||
@each $name, $val in meta.module-variables('dark') {
|
|
||||||
--xm-c-#{$name}: #{$val};
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,2 +1,4 @@
|
|||||||
@use 'vars';
|
@use 'scss/vars' as *;
|
||||||
@use 'content';
|
|
||||||
|
@import 'scss/markdown';
|
||||||
|
@import 'scss/prose';
|
||||||
|
@ -1,9 +0,0 @@
|
|||||||
@forward 'title';
|
|
||||||
@forward 'text';
|
|
||||||
@forward 'link';
|
|
||||||
@forward 'code';
|
|
||||||
@forward 'quote';
|
|
||||||
@forward 'figure';
|
|
||||||
@forward 'list';
|
|
||||||
@forward 'table';
|
|
||||||
@forward 'media';
|
|
@ -1,19 +0,0 @@
|
|||||||
a {
|
|
||||||
border-bottom: 1px solid var(--xm-c-border);
|
|
||||||
color: var(--xm-c-deeper);
|
|
||||||
font-weight: 500;
|
|
||||||
text-decoration: none;
|
|
||||||
transition: border .3s ease-in-out;
|
|
||||||
code {
|
|
||||||
color: var(--xm-c-deep);
|
|
||||||
}
|
|
||||||
&:hover {
|
|
||||||
border-bottom: 1px solid var(--xm-c-regular);
|
|
||||||
}
|
|
||||||
&:not([href]) {
|
|
||||||
border-bottom: none;
|
|
||||||
color: inherit;
|
|
||||||
font-weight: normal;
|
|
||||||
transition: none;
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,17 +0,0 @@
|
|||||||
img {
|
|
||||||
display: block;
|
|
||||||
max-width: 92%;
|
|
||||||
margin: 1rem auto;
|
|
||||||
border-radius: .2rem;
|
|
||||||
}
|
|
||||||
|
|
||||||
video {
|
|
||||||
margin: auto;
|
|
||||||
}
|
|
||||||
|
|
||||||
iframe {
|
|
||||||
display: flex;
|
|
||||||
width: 92%;
|
|
||||||
margin: auto;
|
|
||||||
border-radius: .2rem;
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
table {
|
|
||||||
overflow: auto;
|
|
||||||
width: 100%;
|
|
||||||
border-spacing: 0;
|
|
||||||
border-collapse: collapse;
|
|
||||||
th,
|
|
||||||
td {
|
|
||||||
padding: 6px 13px;
|
|
||||||
border: 1.5px solid var(--xm-c-border-table);
|
|
||||||
}
|
|
||||||
thead th {
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
tbody tr {
|
|
||||||
&:hover {
|
|
||||||
background-color: var(--xm-c-shallowest);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
103
src/scss/markdown.scss
Normal file
103
src/scss/markdown.scss
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
.markdown-body {
|
||||||
|
color: var(--xm-c-regular);
|
||||||
|
font-family: var(--xm-font-display) !important;
|
||||||
|
pre:not(.shiki, .highlight) {
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
background: transparent;
|
||||||
|
}
|
||||||
|
.shiki,
|
||||||
|
.highlight {
|
||||||
|
margin: .5rem 0;
|
||||||
|
font-size: 1.05rem;
|
||||||
|
font-family: var(--xm-font-code) !important;
|
||||||
|
line-height: 1.4;
|
||||||
|
&.shiki-light {
|
||||||
|
background: var(--xm-c-shiki-light) !important;
|
||||||
|
}
|
||||||
|
&.shiki-dark {
|
||||||
|
background: var(--xm-c-shiki-dark) !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
img {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
a {
|
||||||
|
border-bottom: 1px solid var(--xm-c-link-border);
|
||||||
|
font-weight: inherit;
|
||||||
|
text-decoration: none;
|
||||||
|
transition: border .3s ease-in-out;
|
||||||
|
&:hover {
|
||||||
|
border-bottom: 1px solid var(--xm-c-regular);
|
||||||
|
}
|
||||||
|
code {
|
||||||
|
color: inherit;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
hr {
|
||||||
|
width: 50px;
|
||||||
|
margin-top: 2rem;
|
||||||
|
margin-bottom: 2rem;
|
||||||
|
}
|
||||||
|
blockquote,
|
||||||
|
q {
|
||||||
|
padding: .6rem 1.2rem;
|
||||||
|
font-weight: normal;
|
||||||
|
font-style: normal;
|
||||||
|
line-height: 1.5rem;
|
||||||
|
opacity: .8;
|
||||||
|
> * {
|
||||||
|
&:first-child {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
&:last-child {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
p:first-of-type {
|
||||||
|
&::before,
|
||||||
|
&::after {
|
||||||
|
content: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
&:first-child {
|
||||||
|
margin-top: 1rem;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
html:not(.dark) .shiki-dark,
|
||||||
|
.dark .shiki-light {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.item {
|
||||||
|
text-decoration: none;
|
||||||
|
opacity: .6;
|
||||||
|
transition: .2s all ease-out;
|
||||||
|
&:hover {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.header-anchor {
|
||||||
|
float: left;
|
||||||
|
margin-top: .125rem;
|
||||||
|
margin-left: -1.25rem;
|
||||||
|
padding-right: .5rem;
|
||||||
|
border: 0 !important;
|
||||||
|
font-size: .875rem;
|
||||||
|
text-decoration: none;
|
||||||
|
opacity: 0;
|
||||||
|
&:hover,
|
||||||
|
&:focus {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@for $i from 1 through 6 {
|
||||||
|
h#{$i} {
|
||||||
|
&:hover,
|
||||||
|
&:focus {
|
||||||
|
.header-anchor {
|
||||||
|
opacity: .35 + $i * .025;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
1
src/scss/partials/_all.scss
Normal file
1
src/scss/partials/_all.scss
Normal file
@ -0,0 +1 @@
|
|||||||
|
@import 'title', 'text', 'link', 'code', 'quote', 'figure', 'list', 'table', 'media';
|
@ -2,9 +2,5 @@
|
|||||||
max-width: fit-content;
|
max-width: fit-content;
|
||||||
color: var(--xm-c-regular);
|
color: var(--xm-c-regular);
|
||||||
font-size: 1rem;
|
font-size: 1rem;
|
||||||
font-family: var(--xm-font-display) !important;
|
|
||||||
line-height: 1.75;
|
line-height: 1.75;
|
||||||
&:first-child {
|
|
||||||
margin-top: 1rem;
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -8,14 +8,13 @@ code {
|
|||||||
content: '`';
|
content: '`';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pre {
|
pre {
|
||||||
overflow-x: auto;
|
overflow-x: auto;
|
||||||
margin-top: 1.75rem;
|
margin-top: 1.75rem;
|
||||||
margin-bottom: 1.75rem;
|
margin-bottom: 1.75rem;
|
||||||
padding-top: .875rem, 1.15rem;
|
padding-top: .875rem, 1.15rem;
|
||||||
border-radius: .375rem;
|
border-radius: .375rem;
|
||||||
color: var(--xm-c-deep);
|
color: var(--xm-c-pre);
|
||||||
font-size: .875rem;
|
font-size: .875rem;
|
||||||
line-height: 1.75;
|
line-height: 1.75;
|
||||||
code {
|
code {
|
||||||
@ -33,10 +32,4 @@ pre {
|
|||||||
content: none;
|
content: none;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
&:has(code) {
|
|
||||||
margin: .5rem 0;
|
|
||||||
font-size: 1.05rem;
|
|
||||||
font-family: var(--xm-font-code);
|
|
||||||
line-height: 1.4;
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -3,7 +3,7 @@ figure {
|
|||||||
margin-bottom: 2rem;
|
margin-bottom: 2rem;
|
||||||
figcaption {
|
figcaption {
|
||||||
margin-top: .875rem;
|
margin-top: .875rem;
|
||||||
color: var(--xm-c-shallow);
|
color: var(--xm-c-figcaption);
|
||||||
font-size: .875rem;
|
font-size: .875rem;
|
||||||
line-height: 1.45;
|
line-height: 1.45;
|
||||||
}
|
}
|
8
src/scss/partials/link.scss
Normal file
8
src/scss/partials/link.scss
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
a {
|
||||||
|
color: var(--xm-c-deeper);
|
||||||
|
font-weight: 500;
|
||||||
|
text-decoration: none;
|
||||||
|
code {
|
||||||
|
color: var(--xm-c-code);
|
||||||
|
}
|
||||||
|
}
|
@ -2,7 +2,6 @@ li {
|
|||||||
margin-top: .5rem;
|
margin-top: .5rem;
|
||||||
margin-bottom: .5rem;
|
margin-bottom: .5rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
ol {
|
ol {
|
||||||
margin-top: 1.25rem;
|
margin-top: 1.25rem;
|
||||||
margin-bottom: 1.25rem;
|
margin-bottom: 1.25rem;
|
||||||
@ -14,12 +13,11 @@ ol {
|
|||||||
content: counter(list-item, decimal) '.';
|
content: counter(list-item, decimal) '.';
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 0;
|
left: 0;
|
||||||
color: var(--xm-c-shallow);
|
color: var(--xm-c-ol-counter);
|
||||||
font-weight: 400;
|
font-weight: 400;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ul {
|
ul {
|
||||||
margin-top: 1.25rem;
|
margin-top: 1.25rem;
|
||||||
margin-bottom: 1.25rem;
|
margin-bottom: 1.25rem;
|
||||||
@ -35,11 +33,10 @@ ul {
|
|||||||
width: .375rem;
|
width: .375rem;
|
||||||
height: .375rem;
|
height: .375rem;
|
||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
background-color: var(--xm-c-shallower);
|
background-color: var(--xm-c-ul-counter);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ul ul,
|
ul ul,
|
||||||
ul ol,
|
ul ol,
|
||||||
ol ul,
|
ol ul,
|
5
src/scss/partials/media.scss
Normal file
5
src/scss/partials/media.scss
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
img,
|
||||||
|
video {
|
||||||
|
margin-top: 2rem;
|
||||||
|
margin-bottom: 2rem;
|
||||||
|
}
|
@ -2,14 +2,12 @@ blockquote,
|
|||||||
q {
|
q {
|
||||||
margin-top: 1.65rem;
|
margin-top: 1.65rem;
|
||||||
margin-bottom: 1.65rem;
|
margin-bottom: 1.65rem;
|
||||||
padding: .6rem 1.2rem;
|
padding-left: 1rem;
|
||||||
border-left: .25rem solid var(--xm-c-border);
|
border-left: .25rem solid var(--xm-c-quote-border);
|
||||||
color: inherit;
|
color: inherit;
|
||||||
font-weight: 500;
|
font-weight: 500;
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
line-height: 1.5rem;
|
|
||||||
quotes: '\201C''\201D''\2018''\2019';
|
quotes: '\201C''\201D''\2018''\2019';
|
||||||
opacity: .75;
|
|
||||||
p {
|
p {
|
||||||
&:first-of-type::before {
|
&:first-of-type::before {
|
||||||
content: open-quote;
|
content: open-quote;
|
||||||
@ -18,12 +16,4 @@ q {
|
|||||||
content: close-quote;
|
content: close-quote;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
> * {
|
|
||||||
&:first-child {
|
|
||||||
margin-top: 0;
|
|
||||||
}
|
|
||||||
&:last-child {
|
|
||||||
margin-bottom: 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
44
src/scss/partials/table.scss
Normal file
44
src/scss/partials/table.scss
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
table {
|
||||||
|
width: 100%;
|
||||||
|
margin-top: 2rem;
|
||||||
|
margin-bottom: 2rem;
|
||||||
|
table-layout: auto;
|
||||||
|
font-size: .875rem;
|
||||||
|
line-height: 1.75;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
thead {
|
||||||
|
border-bottom-width: 1px;
|
||||||
|
border-bottom-color: var(--xm-c-thead-border);
|
||||||
|
color: var(--xm-c-thead);
|
||||||
|
font-weight: 600;
|
||||||
|
th {
|
||||||
|
vertical-align: bottom;
|
||||||
|
padding-left: auto .575rem .575rem;
|
||||||
|
&:first-child {
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
&:last-child {
|
||||||
|
padding-right: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
tbody {
|
||||||
|
tr {
|
||||||
|
border-bottom-width: 1px;
|
||||||
|
border-bottom-color: var(--xm-c-tr-border);
|
||||||
|
&:last-child {
|
||||||
|
border-bottom-width: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
td {
|
||||||
|
vertical-align: top;
|
||||||
|
padding: .575rem;
|
||||||
|
&:first-child {
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
&:last-child {
|
||||||
|
padding-right: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -2,16 +2,13 @@ p {
|
|||||||
margin-top: 1.25rem;
|
margin-top: 1.25rem;
|
||||||
margin-bottom: 1.25rem;
|
margin-bottom: 1.25rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
strong {
|
strong {
|
||||||
color: var(--xm-c-deep);
|
color: var(--xm-c-deep);
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
}
|
}
|
||||||
|
|
||||||
b {
|
b {
|
||||||
color: var(--xm-c-deep);
|
color: var(--xm-c-deep);
|
||||||
}
|
}
|
||||||
|
|
||||||
em {
|
em {
|
||||||
color: inherit;
|
color: inherit;
|
||||||
}
|
}
|
@ -6,7 +6,6 @@ h1 {
|
|||||||
font-size: 2.25rem;
|
font-size: 2.25rem;
|
||||||
line-height: 1.15;
|
line-height: 1.15;
|
||||||
}
|
}
|
||||||
|
|
||||||
h2 {
|
h2 {
|
||||||
margin-top: 2rem;
|
margin-top: 2rem;
|
||||||
margin-bottom: 1rem;
|
margin-bottom: 1rem;
|
||||||
@ -21,7 +20,6 @@ h2 {
|
|||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
h3 {
|
h3 {
|
||||||
margin-top: 1.6rem;
|
margin-top: 1.6rem;
|
||||||
margin-bottom: .6rem;
|
margin-bottom: .6rem;
|
||||||
@ -37,7 +35,6 @@ h3 {
|
|||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
h4 {
|
h4 {
|
||||||
margin-top: 1.5rem;
|
margin-top: 1.5rem;
|
||||||
margin-bottom: .5rem;
|
margin-bottom: .5rem;
|
||||||
@ -48,7 +45,6 @@ h4 {
|
|||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
h5,
|
h5,
|
||||||
h6 {
|
h6 {
|
||||||
margin-top: 20px;
|
margin-top: 20px;
|
||||||
@ -58,40 +54,11 @@ h6 {
|
|||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
opacity: .5;
|
opacity: .5;
|
||||||
}
|
}
|
||||||
|
|
||||||
hr {
|
hr {
|
||||||
width: 50px;
|
margin-top: 3rem;
|
||||||
margin-top: 2rem;
|
margin-bottom: 3rem;
|
||||||
margin-bottom: 2rem;
|
|
||||||
border-color: var(--xm-c-hr-border);
|
border-color: var(--xm-c-hr-border);
|
||||||
+ * {
|
+ * {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.header-anchor {
|
|
||||||
float: left;
|
|
||||||
margin-top: 0;
|
|
||||||
margin-left: -1.25rem;
|
|
||||||
padding-right: .5rem;
|
|
||||||
border: 0 !important;
|
|
||||||
font-weight: 600;
|
|
||||||
font-size: inherit;
|
|
||||||
text-decoration: none;
|
|
||||||
opacity: 0;
|
|
||||||
&:hover,
|
|
||||||
&:focus {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@for $i from 1 through 6 {
|
|
||||||
h#{$i} {
|
|
||||||
&:hover,
|
|
||||||
&:focus {
|
|
||||||
.header-anchor {
|
|
||||||
opacity: .35 + $i * .025;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
6
src/scss/prose.scss
Normal file
6
src/scss/prose.scss
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
@use 'partials/container' as *;
|
||||||
|
|
||||||
|
.prose {
|
||||||
|
@include container;
|
||||||
|
@import 'partials/all';
|
||||||
|
}
|
18
src/scss/variables/_colors.scss
Normal file
18
src/scss/variables/_colors.scss
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
// Colors
|
||||||
|
$pre: #e5e7eb;
|
||||||
|
$code: #111827;
|
||||||
|
$figcaption: #6b7280;
|
||||||
|
$thead: #111827;
|
||||||
|
$ol-counter: #6b7280;
|
||||||
|
$ul-counter: #d1d5db;
|
||||||
|
|
||||||
|
// Border
|
||||||
|
$link-border: hsla(0deg 0% 50% / .3);
|
||||||
|
$hr-border: hsla(0deg 0% 50% / .3);
|
||||||
|
$quote-border: hsla(0deg 0% 50% / .3);
|
||||||
|
$thead-border: #d1d5db;
|
||||||
|
$tr-border: #e5e7eb;
|
||||||
|
|
||||||
|
// Shiki (code highlight)
|
||||||
|
$shiki-light: #f8f8f8;
|
||||||
|
$shiki-dark: #0e0e0e;
|
3
src/scss/variables/modes/_dark.scss
Normal file
3
src/scss/variables/modes/_dark.scss
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
$regular: #bbb;
|
||||||
|
$deep: #ddd;
|
||||||
|
$deeper: #fff;
|
3
src/scss/variables/modes/_light.scss
Normal file
3
src/scss/variables/modes/_light.scss
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
$regular: #555;
|
||||||
|
$deep: #222;
|
||||||
|
$deeper: #000;
|
26
src/scss/vars.scss
Normal file
26
src/scss/vars.scss
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
@use 'sass:meta' as *;
|
||||||
|
|
||||||
|
@use 'variables/constants';
|
||||||
|
@use 'variables/colors';
|
||||||
|
|
||||||
|
@use 'variables/modes/light';
|
||||||
|
@use 'variables/modes/dark';
|
||||||
|
|
||||||
|
:root {
|
||||||
|
@each $name, $val in module-variables('constants') {
|
||||||
|
--xm-#{$name}: #{$val};
|
||||||
|
}
|
||||||
|
@each $name, $val in module-variables('colors') {
|
||||||
|
--xm-c-#{$name}: #{$val};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.markdown-body {
|
||||||
|
@each $name, $val in module-variables('light') {
|
||||||
|
--xm-c-#{$name}: #{$val};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.dark .markdown-body {
|
||||||
|
@each $name, $val in module-variables('dark') {
|
||||||
|
--xm-c-#{$name}: #{$val};
|
||||||
|
}
|
||||||
|
}
|
@ -1,10 +0,0 @@
|
|||||||
// Dark mode
|
|
||||||
|
|
||||||
$shallowest: #212121;
|
|
||||||
$shallower: #555;
|
|
||||||
$shallow: #777;
|
|
||||||
$regular: #bbb;
|
|
||||||
$deep: #ddd;
|
|
||||||
$deeper: #fff;
|
|
||||||
$border: hsla(0deg 0% 75% / .35);
|
|
||||||
$border-table: hsla(0deg 0% 40% / .75);
|
|
@ -1,10 +0,0 @@
|
|||||||
// Light mode
|
|
||||||
|
|
||||||
$shallowest: #f8f8f8;
|
|
||||||
$shallower: #ddd;
|
|
||||||
$shallow: #bbb;
|
|
||||||
$regular: #555;
|
|
||||||
$deep: #222;
|
|
||||||
$deeper: #000;
|
|
||||||
$border: hsla(0deg 0% 50% / .35);
|
|
||||||
$border-table: hsla(0deg 0% 50% / .5);
|
|
Reference in New Issue
Block a user