diff --git a/17618.html b/17618.html deleted file mode 100644 index 86a06f1..0000000 --- a/17618.html +++ /dev/null @@ -1,239 +0,0 @@ -利用GitHub自动化部署Blog | Bluecode - - - - - - - - - - - - - -

利用GitHub自动化部署Blog

前言

最近由于工作需要所以研究了一下GitLab的CI/CD的功能,事后想起荒废了很久的博客,所以萌生了使用GitHub的Actions重新部署一下的想法,这里记录一下安装的过程。

-

环境说明

    -
  1. 博客框架: Hexo
  2. -
  3. 博客主题: Butterfly
  4. -
  5. 托管环境: GitHub Pages
  6. -
  7. 源程序仓库: 可以设置成私有仓库,用来保存原始文件
  8. -
  9. 页面文件仓库: 用来存放编译后的页面文件
  10. -
  11. 更新流程: 编写文章PUSH到源程序仓库,源程序仓库Actions触发预先定义的任务,编译后PUSH到页面文件仓库,页面文件仓库Actions触发默认的github-pages任务部署网页服务。
  12. -
-

安装hexo并初始化项目

Hexo依赖于Node.js环境,所以需要先安装Node.js,对于Mac来说,可以去Node.js官网下载安装包也可以通过brew命令安装。还需要安装GIT环境,Mac OS默认已安装。

-
    -
  1. 全局安装hexo-cli npm install -g hexo-cli
  2. -
  3. 初始化一个名为blog的hexo工程 hexo init blog
  4. -
  5. 安装依赖 cd blog && npm install
  6. -
  7. 启动hexo服务 hexo server
  8. -
-

安装主题

推荐通过git clone主题仓库到hexo的themes文件夹下,这样比较容易管理
执行命令git clone -b master https://github.com/jerryc127/hexo-theme-butterfly.git themes/butterfly将主题butterfly安装到hexo的themes文件夹下。

-

建立源程序仓库

在GitHub建立源程序仓库,名称随意,可以设置成私有仓库,我这里取名为blog。

-

建立页面文件仓库

在GitHub建立页面文件仓库,如果想通过githubname.github.io访问,需要将仓库命名为githubname.github.io,如果没有这个需求,可以任意取名。

-

设置秘钥

需要在GitHub设置三个秘钥文件

-

SSH keys

添加Authentication Keys到GitHub的SSH keys,成功设置后可以免密执行git命令。

-
    -
  1. ssh-keygen -t rsa -C "your.email@example.com" -b 4096,按提示生成秘钥,也可以一路无脑回车
  2. -
  3. pbcopy < ~/.ssh/id_rsa.pub,拷贝公钥到SSH keys
  4. -
  5. ssh -T git@github.com,测试是否可以通过认证。
  6. -
-

源程序仓库的Actions secrets

添加私钥blog-deploy-key到源程序仓库的Actions secrets

-
    -
  1. ssh-keygen -f blog-deploy-key,生成公私钥对
  2. -
  3. pbcopy < ~/.ssh/blog-deploy-key,拷贝私钥到Actions secrets,命名为BLOG_DEPLOY_PRI
  4. -
-

页面文件仓库的Deploy keys

添加公钥blog-deploy-key.pub到页面文件仓库的Deploy keys,切记勾选Allow write access ,设置成功后源程序仓库的Actions任务可以PUSH代码到页面文件仓库

-
    -
  1. pbcopy < ~/.ssh/blog-deploy-key.pub,拷贝公钥粘贴到Deploy keys,命名为BLOG_DEPLOY_PUB
  2. -
-

编写blog仓库的Actions文件

新建文件.github/workflows/deploy.yml,编写Actions任务。

-
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
name: CI

on:
push:
branches:
- main

env:
GIT_USER: xxx
GIT_EMAIL: xxx@xx.com
THEME_REPO: jerryc127/hexo-theme-butterfly
THEME_BRANCH: master
THEME: butterfly

jobs:
build:
name: Build on node ${{ matrix.node_version }} and ${{ matrix.os }}
runs-on: ubuntu-latest
strategy:
matrix:
os: [ubuntu-latest]
node_version: [18.x]

steps:
- name: Checkout
uses: actions/checkout@v2

- name: Checkout theme repo
uses: actions/checkout@v2
with:
repository: ${{ env.THEME_REPO }}
ref: ${{ env.THEME_BRANCH }}
path: themes/${{ env.THEME }}

- name: Use Node.js ${{ matrix.node_version }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.node_version }}

- name: Configuration environment
env:
BLOG_DEPLOY_PRI: ${{secrets.BLOG_DEPLOY_PRI}}
run: |
sudo timedatectl set-timezone "Asia/Shanghai"
mkdir -p ~/.ssh/
echo "$BLOG_DEPLOY_PRI" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
ssh-keyscan github.com >> ~/.ssh/known_hosts
git config --global user.name $GIT_USER
git config --global user.email $GIT_EMAIL

- name: Install dependencies
run: |
npm install

- name: Deploy hexo
run: |
npm run deploy
-

自定义主题配置

可以遵照官方建议操作

-

在 hexo 的根目錄創建一個文件 _config.butterfly.yml,並把主題目錄的 _config.yml 內容複製到 _config.butterfly.yml 去。( 注意: 複製的是主題的 _config.yml ,而不是 hexo 的 _config.yml)

-
- -

如果某些主题不支持读取根目录下的配置文件,可以考虑使用根目录下的配置文件覆盖主题目录下的配置文件,只需要在Configuration environment任务最后添加cp _config.${{ env.THEME }}.yml themes/${{ env.THEME }}/_config.yml

-

当然主题可能出现破坏性升级,可以考虑不追踪最新的主题,自己手动更新主题文件,去掉上面的Checkout theme repo任务,并且将themes文件夹添加到git版本追踪中

-
- -

设置hexo部署路径

在hexo的配置文件_config.yml中,补全设置deploy子参数

-
1
2
3
4
deploy:
type: git
repo: git@github.com:githubname/githubname.github.io.git
branch: main
-

以上涉及到的所有branch参数都需要一一对应,源程序仓库和页面文件仓库我都是使用的main分支,主题使用的master分支,按需修改即可,页面文件仓库的Pages也需要设置成对应的分支

-
-

参考链接

使用GitHub Actions部署Hexo博客
利用 Github Actions 自动部署 Hexo 博客

-
Author: Bluecode
Link: http://example.com/17618.html
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.

Comment
\ No newline at end of file diff --git "a/2020/12/14/\345\214\227\344\272\254\350\201\224\351\200\232HG260GS-U\344\277\256\346\224\271\346\241\245\346\216\245\346\250\241\345\274\217/index.html" "b/2020/12/14/\345\214\227\344\272\254\350\201\224\351\200\232HG260GS-U\344\277\256\346\224\271\346\241\245\346\216\245\346\250\241\345\274\217/index.html" new file mode 100644 index 0000000..c5883ef --- /dev/null +++ "b/2020/12/14/\345\214\227\344\272\254\350\201\224\351\200\232HG260GS-U\344\277\256\346\224\271\346\241\245\346\216\245\346\250\241\345\274\217/index.html" @@ -0,0 +1,38 @@ +北京联通HG260GS-U修改桥接模式 | bluecode
John Doe 10 X 10
Last updated: 2020-12-14
John Doe:~ Desktop$ node 北京联通HG260GS-U修改桥接模式.js

> Post.all
北京联通HG260GS-U修改桥接模式

前言

上一家租住的自如也是联通宽带,速率有200M,但是使用的路由器是newWifi,比较卡顿,当时弄了个黑群晖需要外网访问,所以折腾了下,当时忘记记录了,这个周末宅在家把黑苹果给升级到Big Sur了,升级过程中真的意识到了数据备份的重要性,所以又萌生了NAS的想法,主要是在一个测速网站提示签约带宽是300M可以很便宜升级到500M,但是我平常都很难突破100M,感觉是路由器的锅,所以我掏出来成成灰已久的K3,既然都上了K3就折腾下光猫吧,折腾完后网速爽歪歪!!!
-w1029

+ + +

路由器设备信息

-w520

+

主要三个步骤

    +
  • 破解Admin用户登录
  • +
  • 修改配置文件
  • +
  • 改路由器为桥接模式
  • +
+

破解Admin用户登录

虽然网上分享的方法很多,但大都失效了,分享下(2020.12.13)我验证成功的

+
    +
  1. 登录管理界面,可以查看光猫背后的信息或者DNS信息
  2. +
  3. 使用光猫背面提供的普通用户登录
  4. +
  5. 访问页面,开启telnet和ftp-w587
  6. +
+

修改配置文件

    +
  1. 使用telnet访问路由器telnet 192.168.1.1,账号和密码是上一个页面设置的

    +
  2. +
  3. 备份当前配置文件,sh切换到BusyBox模式,支持更多命令,gendefsettings备份当前配置文件到fhconf目录

    +
  4. +
  5. 如果对上一步备份文件不放心,可以通过上面开启的ftp功能将文件备份到本地(可选)

    +
  6. +
  7. 修改管理员登陆限制,vi fhconf/backpresettings.conf进入文件修改,删除区域限制代码

    +
    1
    2
    3
    <X_FIB_COM_Tr069Control>
    <AreaCode>G</AreaCode>
    </X_FIB_COM_Tr069Control>
    +
  8. +
  9. 参考参考链接3步骤c-i(之前没做这个修改,导致重启光猫配置失效)

    +
  10. +
  11. 重启路由器使配置生效loaddefsettings fhconf/backpresettings.conf

    +
  12. +
+

修改桥接模式

    +
  1. 查找管理员密码,搜索配置文件Admin,找到base64编码的管理员密码,base64解码下,我的是MTIzcXdlYXNkenhjAA,解码后是123qweasdzxc截屏2020-12-14 上午7.15.35
  2. +
  3. 使用管理员账号CUAdmin密码123qweasdzxc登录管理界面 -w836
  4. +
  5. 选择连接名称带有INTERNET的,修改宽带连接方式为Bridge其它保持不变
  6. +
  7. 路由器选择拨号模式就可以了
  8. +
+

参考

联通光猫HG6543C改桥接(山东联通为例)
烽火HG6543C改桥接以及BCM6848系列光猫探讨
烽火HG220G-U 2.03+ / HG2201U 5.0+光猫改桥接教程

+
\ No newline at end of file diff --git a/2020/12/20/Learn-SwiftUI-for-iOS-13/index.html b/2020/12/20/Learn-SwiftUI-for-iOS-13/index.html new file mode 100644 index 0000000..8bb2029 --- /dev/null +++ b/2020/12/20/Learn-SwiftUI-for-iOS-13/index.html @@ -0,0 +1 @@ +Learn SwiftUI for iOS 13 | bluecode
John Doe 10 X 10
Last updated: 2020-12-20
John Doe:~ Desktop$ node Learn SwiftUI for iOS 13.js

> Post.all
\ No newline at end of file diff --git a/404.html b/404.html deleted file mode 100644 index 2e896c9..0000000 --- a/404.html +++ /dev/null @@ -1,158 +0,0 @@ -Page not found | Bluecode - - - - - - - -
Page not found

404

Page Not Found
\ No newline at end of file diff --git a/5586.html b/5586.html deleted file mode 100644 index 77cabaa..0000000 --- a/5586.html +++ /dev/null @@ -1,193 +0,0 @@ -私人密码库Bitwarden部署 | Bluecode - - - - - - - - - - - -

私人密码库Bitwarden部署

说明

Bitwarden官方不支持ARM指令集的设备,所以这里使用的是基于Rust编写的兼容Bitwarden Server API的第三方实现版本,并且官方部署案例资源占用很多,试过Oracle的1CPU1G服务器无法启动,所以这种情况也可以尝试这个版本。

-

基于docker服务

基于docker服务可以快速部署,减少不必要的环境依赖问题

-

编写docker-comporse文件

1
2
3
4
5
6
7
8
9
version: '3'
services:
vaultwarden:
image: vaultwarden/server:latest
volumes:
- ./vw-data:/data
ports:
- "127.0.0.1:8010:80"
restart: always
- -

nginx反向代理

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
server {
listen 80;
listen [::]:80;
server_name domain.com;
# Enforce HTTPS
return 301 https://$server_name;
}


server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name domain.com;

ssl_certificate /path/domain.com.cer;
ssl_certificate_key /path/domain.com.key;
location / {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8010;
}
}
-

服务启动

docker-compose up -d

-
Author: Bluecode
Link: http://example.com/5586.html
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.

Comment
\ No newline at end of file diff --git a/5586/cover.png b/5586/cover.png deleted file mode 100644 index 63fb972..0000000 Binary files a/5586/cover.png and /dev/null differ diff --git a/5586/top.png b/5586/top.png deleted file mode 100644 index 9de9f52..0000000 Binary files a/5586/top.png and /dev/null differ diff --git a/CNAME b/CNAME deleted file mode 100644 index f702c9b..0000000 --- a/CNAME +++ /dev/null @@ -1,2 +0,0 @@ -blog.404996.xyz - diff --git a/about/index.html b/about/index.html new file mode 100644 index 0000000..88ac507 --- /dev/null +++ b/about/index.html @@ -0,0 +1 @@ +about | bluecode
John Doe 10 X 10
Last updated: 2020-04-24
John Doe:~ Desktop$ node about.js

> Sheep.locations
[Beijng, Jiujiang]

> Sheep.education
CUST

> Sheep.interests
[coding, sleeping, reading]

> Sheep.github
https://bluecode.cc/
\ No newline at end of file diff --git a/archives/2020/12/index.html b/archives/2020/12/index.html new file mode 100644 index 0000000..b70d6a8 --- /dev/null +++ b/archives/2020/12/index.html @@ -0,0 +1 @@ +bluecode
John Doe 10 X 10
Last updated: 2020-12-24
John Doe:~ Desktop$ node home.js

> Blog.purpose
记录生活.

> Blog.author
bluecode

> Blog.more
check here
Learn SwiftUI for iOS 13
北京联通HG260GS-U修改桥接模式

前言

上一家租住的自如也是联通宽带,速率有200M,但是使用的路由器是newWifi,比较卡顿,当时弄了个黑群晖需要外网访问,所以折腾了下,当时忘记记录了,这个周末宅在家把黑苹果给升级到Big Sur了,升级过程中真的意识到了数据备份的重要性,所以又萌生了NAS的想法,主要是在一个测速网站提示签约带宽是300M可以很便宜升级到500M,但是我平常都很难突破100M,感觉是路由器的锅,所以我掏出来成成灰已久的K3,既然都上了K3就折腾下光猫吧,折腾完后网速爽歪歪!!!
-w1029

\ No newline at end of file diff --git a/archives/2020/index.html b/archives/2020/index.html new file mode 100644 index 0000000..b70d6a8 --- /dev/null +++ b/archives/2020/index.html @@ -0,0 +1 @@ +bluecode
John Doe 10 X 10
Last updated: 2020-12-24
John Doe:~ Desktop$ node home.js

> Blog.purpose
记录生活.

> Blog.author
bluecode

> Blog.more
check here
Learn SwiftUI for iOS 13
北京联通HG260GS-U修改桥接模式

前言

上一家租住的自如也是联通宽带,速率有200M,但是使用的路由器是newWifi,比较卡顿,当时弄了个黑群晖需要外网访问,所以折腾了下,当时忘记记录了,这个周末宅在家把黑苹果给升级到Big Sur了,升级过程中真的意识到了数据备份的重要性,所以又萌生了NAS的想法,主要是在一个测速网站提示签约带宽是300M可以很便宜升级到500M,但是我平常都很难突破100M,感觉是路由器的锅,所以我掏出来成成灰已久的K3,既然都上了K3就折腾下光猫吧,折腾完后网速爽歪歪!!!
-w1029

\ No newline at end of file diff --git a/archives/2022/11/index.html b/archives/2022/11/index.html deleted file mode 100644 index 4a40c64..0000000 --- a/archives/2022/11/index.html +++ /dev/null @@ -1,158 +0,0 @@ -November 2022 | Bluecode - - - - - - - -
Announcement
还没想好说什么
Recent Post
Info
Article :
2
Run time :
Total Count :
1.4k
UV :
PV :
Last Push :
访客地图
\ No newline at end of file diff --git a/archives/2022/index.html b/archives/2022/index.html deleted file mode 100644 index 842b119..0000000 --- a/archives/2022/index.html +++ /dev/null @@ -1,158 +0,0 @@ -2022 | Bluecode - - - - - - - -
Announcement
还没想好说什么
Recent Post
Info
Article :
2
Run time :
Total Count :
1.4k
UV :
PV :
Last Push :
访客地图
\ No newline at end of file diff --git a/archives/index.html b/archives/index.html index 4ec6bf4..b70d6a8 100644 --- a/archives/index.html +++ b/archives/index.html @@ -1,158 +1 @@ -归档 | Bluecode - - - - - - - -
Announcement
还没想好说什么
Recent Post
Info
Article :
2
Run time :
Total Count :
1.4k
UV :
PV :
Last Push :
访客地图
\ No newline at end of file +bluecode
John Doe 10 X 10
Last updated: 2020-12-24
John Doe:~ Desktop$ node home.js

> Blog.purpose
记录生活.

> Blog.author
bluecode

> Blog.more
check here
Learn SwiftUI for iOS 13
北京联通HG260GS-U修改桥接模式

前言

上一家租住的自如也是联通宽带,速率有200M,但是使用的路由器是newWifi,比较卡顿,当时弄了个黑群晖需要外网访问,所以折腾了下,当时忘记记录了,这个周末宅在家把黑苹果给升级到Big Sur了,升级过程中真的意识到了数据备份的重要性,所以又萌生了NAS的想法,主要是在一个测速网站提示签约带宽是300M可以很便宜升级到500M,但是我平常都很难突破100M,感觉是路由器的锅,所以我掏出来成成灰已久的K3,既然都上了K3就折腾下光猫吧,折腾完后网速爽歪歪!!!
-w1029

\ No newline at end of file diff --git a/categories/index.html b/categories/index.html deleted file mode 100644 index a23e3db..0000000 --- a/categories/index.html +++ /dev/null @@ -1,185 +0,0 @@ -categories | Bluecode - - - - - - - - - -

Comment
Announcement
还没想好说什么
Recent Post
Info
Article :
2
Run time :
Total Count :
1.4k
UV :
PV :
Last Push :
访客地图
\ No newline at end of file diff --git a/css/index.css b/css/index.css index 0213a55..f34b39c 100644 --- a/css/index.css +++ b/css/index.css @@ -1,5806 +1,629 @@ -/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */ -html { - line-height: 1.15; - -webkit-text-size-adjust: 100% -} - -body { - margin: 0 -} - -main { - display: block -} - -h1 { - font-size: 2em; - margin: .67em 0 -} - -hr { - box-sizing: content-box; - height: 0; - overflow: visible -} - -pre { - font-family: monospace, monospace; - font-size: 1em -} - -a { - background-color: transparent -} - -abbr[title] { - border-bottom: none; - text-decoration: underline; - text-decoration: underline dotted -} - -b, -strong { - font-weight: bolder -} - -code, -kbd, -samp { - font-family: monospace, monospace; - font-size: 1em -} - -small { - font-size: 80% -} - -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline -} - -sub { - bottom: -.25em -} - -sup { - top: -.5em -} - -img { - border-style: none -} - -button, -input, -optgroup, -select, -textarea { - font-family: inherit; - font-size: 100%; - line-height: 1.15; - margin: 0 -} - -button, -input { - overflow: visible -} - -button, -select { - text-transform: none -} - -[type=button], -[type=reset], -[type=submit], -button { - -webkit-appearance: button -} - -[type=button]::-moz-focus-inner, -[type=reset]::-moz-focus-inner, -[type=submit]::-moz-focus-inner, -button::-moz-focus-inner { - border-style: none; - padding: 0 -} - -[type=button]:-moz-focusring, -[type=reset]:-moz-focusring, -[type=submit]:-moz-focusring, -button:-moz-focusring { - outline: 1px dotted ButtonText -} - -fieldset { - padding: .35em .75em .625em -} - -legend { - box-sizing: border-box; - color: inherit; - display: table; - max-width: 100%; - padding: 0; - white-space: normal -} - -progress { - vertical-align: baseline -} - -textarea { - overflow: auto -} - -[type=checkbox], -[type=radio] { - box-sizing: border-box; - padding: 0 -} - -[type=number]::-webkit-inner-spin-button, -[type=number]::-webkit-outer-spin-button { - height: auto -} - -[type=search] { - -webkit-appearance: textfield; - outline-offset: -2px -} - -[type=search]::-webkit-search-decoration { - -webkit-appearance: none -} - -::-webkit-file-upload-button { - -webkit-appearance: button; - font: inherit -} - -details { - display: block -} - -summary { - display: list-item -} - -template { - display: none -} - -[hidden] { - display: none -} -.limit-one-line, -#article-container .flink .flink-item-name, -#article-container .flink .flink-item-desc, -#aside-content .card-archives ul.card-archive-list > .card-archive-list-item a span, -#aside-content .card-categories ul.card-category-list > .card-category-list-item a span, -.site-data > a .headline, -#pagination .prev_info, -#pagination .next_info, -#sidebar #sidebar-menus .menus_items .site-page { - overflow: hidden; - -o-text-overflow: ellipsis; - text-overflow: ellipsis; - white-space: nowrap; -} -.limit-more-line, -.error404 #error-wrap .error-content .error-info .error_subtitle, -.article-sort-item-title, -#recent-posts > .recent-post-item >.recent-post-info > .article-title, -#recent-posts > .recent-post-item >.recent-post-info > .content, -#aside-content .aside-list > .aside-list-item .content > .name, -#aside-content .aside-list > .aside-list-item .content > .title, -#aside-content .aside-list > .aside-list-item .content > .comment, -#post-info .post-title, -.relatedPosts > .relatedPosts-list .content .title, -#article-container figure.gallery-group p, -#article-container figure.gallery-group .gallery-group-name { - display: -webkit-box; - overflow: hidden; - -webkit-box-orient: vertical; -} -.fontawesomeIcon, -hr:before, -#article-container h1:before, -#article-container h2:before, -#article-container h3:before, -#article-container h4:before, -#article-container h5:before, -#article-container h6:before, -#post .post-copyright:before, -#post .post-outdate-notice:before, -.note:not(.no-icon)::before { - display: inline-block; - font-weight: 600; - font-family: 'Font Awesome 6 Free'; - text-rendering: auto; - -webkit-font-smoothing: antialiased; -} -.cardHover, -.error404 #error-wrap .error-content, -.layout > div:first-child:not(.recent-posts), -#recent-posts > .recent-post-item, -#aside-content .card-widget, -.layout > .recent-posts .pagination > *:not(.space) { - border-radius: 8px; - background: var(--card-bg); - -webkit-box-shadow: var(--card-box-shadow); - box-shadow: var(--card-box-shadow); - -webkit-transition: all 0.3s; - -moz-transition: all 0.3s; - -o-transition: all 0.3s; - -ms-transition: all 0.3s; - transition: all 0.3s; -} -.cardHover:hover, -.error404 #error-wrap .error-content:hover, -.layout > div:first-child:not(.recent-posts):hover, -#recent-posts > .recent-post-item:hover, -#aside-content .card-widget:hover, -.layout > .recent-posts .pagination > *:not(.space):hover { - -webkit-box-shadow: var(--card-hover-box-shadow); - box-shadow: var(--card-hover-box-shadow); -} -.imgHover, -.error404 #error-wrap .error-content .error-img img, -.article-sort-item-img img, -#recent-posts > .recent-post-item .post_cover img.post_bg, -#aside-content .aside-list > .aside-list-item .thumbnail > img { - width: 100%; - height: 100%; - -webkit-transition: filter 375ms ease-in 0.2s, -webkit-transform 0.6s; - -moz-transition: filter 375ms ease-in 0.2s, -moz-transform 0.6s; - -o-transition: filter 375ms ease-in 0.2s, -o-transform 0.6s; - -ms-transition: filter 375ms ease-in 0.2s, -ms-transform 0.6s; - transition: filter 375ms ease-in 0.2s, transform 0.6s; - object-fit: cover; -} -.imgHover:hover, -.error404 #error-wrap .error-content .error-img img:hover, -.article-sort-item-img img:hover, -#recent-posts > .recent-post-item .post_cover img.post_bg:hover, -#aside-content .aside-list > .aside-list-item .thumbnail > img:hover { - -webkit-transform: scale(1.1); - -moz-transform: scale(1.1); - -o-transform: scale(1.1); - -ms-transform: scale(1.1); - transform: scale(1.1); -} -.postImgHover:hover img, -#pagination .prev-post:hover img, -#pagination .next-post:hover img, -.relatedPosts > .relatedPosts-list > div:hover img { - opacity: 0.8; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; - filter: alpha(opacity=80); - -webkit-transform: scale(1.1); - -moz-transform: scale(1.1); - -o-transform: scale(1.1); - -ms-transform: scale(1.1); - transform: scale(1.1); -} -.postImgHover img, -#pagination .prev-post img, -#pagination .next-post img, -.relatedPosts > .relatedPosts-list > div img { - position: absolute; - width: 100%; - height: 100%; - opacity: 0.4; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; - filter: alpha(opacity=40); - -webkit-transition: all 0.6s, filter 375ms ease-in 0.2s; - -moz-transition: all 0.6s, filter 375ms ease-in 0.2s; - -o-transition: all 0.6s, filter 375ms ease-in 0.2s; - -ms-transition: all 0.6s, filter 375ms ease-in 0.2s; - transition: all 0.6s, filter 375ms ease-in 0.2s; - object-fit: cover; -} -.list-beauty, -.category-lists ul { - list-style: none; -} -.list-beauty li, -.category-lists ul li { - position: relative; - padding: 0.12em 0.4em 0.12em 1.4em; -} -.list-beauty li:hover:before, -.category-lists ul li:hover:before { - border-color: var(--pseudo-hover); -} -.list-beauty li:before, -.category-lists ul li:before { - position: absolute; - top: 0.67em; - left: 0; - width: 0.43em; - height: 0.43em; - border: 0.215em solid #49b1f5; - border-radius: 0.43em; - background: transparent; - content: ''; - cursor: pointer; - -webkit-transition: all 0.3s ease-out; - -moz-transition: all 0.3s ease-out; - -o-transition: all 0.3s ease-out; - -ms-transition: all 0.3s ease-out; - transition: all 0.3s ease-out; -} -#content-inner, -#footer { - -webkit-animation: bottom-top 1s; - -moz-animation: bottom-top 1s; - -o-animation: bottom-top 1s; - -ms-animation: bottom-top 1s; - animation: bottom-top 1s; -} -#page-header { - -webkit-animation: header-effect 1s; - -moz-animation: header-effect 1s; - -o-animation: header-effect 1s; - -ms-animation: header-effect 1s; - animation: header-effect 1s; -} -#site-title, -#site-subtitle { - -webkit-animation: titleScale 1s; - -moz-animation: titleScale 1s; - -o-animation: titleScale 1s; - -ms-animation: titleScale 1s; - animation: titleScale 1s; -} -#nav.show { - -webkit-animation: headerNoOpacity 1s; - -moz-animation: headerNoOpacity 1s; - -o-animation: headerNoOpacity 1s; - -ms-animation: headerNoOpacity 1s; - animation: headerNoOpacity 1s; -} -canvas:not(#ribbon-canvas), -#web_bg { - -webkit-animation: to_show 4s; - -moz-animation: to_show 4s; - -o-animation: to_show 4s; - -ms-animation: to_show 4s; - animation: to_show 4s; -} -#ribbon-canvas { - -webkit-animation: ribbon_to_show 4s; - -moz-animation: ribbon_to_show 4s; - -o-animation: ribbon_to_show 4s; - -ms-animation: ribbon_to_show 4s; - animation: ribbon_to_show 4s; -} -#sidebar-menus.open > :nth-child(1) { - -webkit-animation: sidebarItem 0.2s; - -moz-animation: sidebarItem 0.2s; - -o-animation: sidebarItem 0.2s; - -ms-animation: sidebarItem 0.2s; - animation: sidebarItem 0.2s; -} -#sidebar-menus.open > :nth-child(2) { - -webkit-animation: sidebarItem 0.4s; - -moz-animation: sidebarItem 0.4s; - -o-animation: sidebarItem 0.4s; - -ms-animation: sidebarItem 0.4s; - animation: sidebarItem 0.4s; -} -#sidebar-menus.open > :nth-child(3) { - -webkit-animation: sidebarItem 0.6s; - -moz-animation: sidebarItem 0.6s; - -o-animation: sidebarItem 0.6s; - -ms-animation: sidebarItem 0.6s; - animation: sidebarItem 0.6s; -} -#sidebar-menus.open > :nth-child(4) { - -webkit-animation: sidebarItem 0.8s; - -moz-animation: sidebarItem 0.8s; - -o-animation: sidebarItem 0.8s; - -ms-animation: sidebarItem 0.8s; - animation: sidebarItem 0.8s; -} -.scroll-down-effects { - -webkit-animation: scroll-down-effect 1.5s infinite; - -moz-animation: scroll-down-effect 1.5s infinite; - -o-animation: scroll-down-effect 1.5s infinite; - -ms-animation: scroll-down-effect 1.5s infinite; - animation: scroll-down-effect 1.5s infinite; -} -.reward-main { - -webkit-animation: donate_effcet 0.3s 0.1s ease both; - -moz-animation: donate_effcet 0.3s 0.1s ease both; - -o-animation: donate_effcet 0.3s 0.1s ease both; - -ms-animation: donate_effcet 0.3s 0.1s ease both; - animation: donate_effcet 0.3s 0.1s ease both; -} -@-moz-keyframes scroll-down-effect { - 0% { - top: 0; - opacity: 0.4; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; - filter: alpha(opacity=40); - } - 50% { - top: -16px; - opacity: 1; - -ms-filter: none; - filter: none; - } - 100% { - top: 0; - opacity: 0.4; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; - filter: alpha(opacity=40); - } -} -@-webkit-keyframes scroll-down-effect { - 0% { - top: 0; - opacity: 0.4; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; - filter: alpha(opacity=40); - } - 50% { - top: -16px; - opacity: 1; - -ms-filter: none; - filter: none; - } - 100% { - top: 0; - opacity: 0.4; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; - filter: alpha(opacity=40); - } -} -@-o-keyframes scroll-down-effect { - 0% { - top: 0; - opacity: 0.4; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; - filter: alpha(opacity=40); - } - 50% { - top: -16px; - opacity: 1; - -ms-filter: none; - filter: none; - } - 100% { - top: 0; - opacity: 0.4; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; - filter: alpha(opacity=40); - } -} -@keyframes scroll-down-effect { - 0% { - top: 0; - opacity: 0.4; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; - filter: alpha(opacity=40); - } - 50% { - top: -16px; - opacity: 1; - -ms-filter: none; - filter: none; - } - 100% { - top: 0; - opacity: 0.4; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; - filter: alpha(opacity=40); - } -} -@-moz-keyframes header-effect { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(-50px); - -moz-transform: translateY(-50px); - -o-transform: translateY(-50px); - -ms-transform: translateY(-50px); - transform: translateY(-50px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-webkit-keyframes header-effect { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(-50px); - -moz-transform: translateY(-50px); - -o-transform: translateY(-50px); - -ms-transform: translateY(-50px); - transform: translateY(-50px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-o-keyframes header-effect { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(-50px); - -moz-transform: translateY(-50px); - -o-transform: translateY(-50px); - -ms-transform: translateY(-50px); - transform: translateY(-50px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@keyframes header-effect { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(-50px); - -moz-transform: translateY(-50px); - -o-transform: translateY(-50px); - -ms-transform: translateY(-50px); - transform: translateY(-50px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-moz-keyframes headerNoOpacity { - 0% { - -webkit-transform: translateY(-50px); - -moz-transform: translateY(-50px); - -o-transform: translateY(-50px); - -ms-transform: translateY(-50px); - transform: translateY(-50px); - } - 100% { - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-webkit-keyframes headerNoOpacity { - 0% { - -webkit-transform: translateY(-50px); - -moz-transform: translateY(-50px); - -o-transform: translateY(-50px); - -ms-transform: translateY(-50px); - transform: translateY(-50px); - } - 100% { - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-o-keyframes headerNoOpacity { - 0% { - -webkit-transform: translateY(-50px); - -moz-transform: translateY(-50px); - -o-transform: translateY(-50px); - -ms-transform: translateY(-50px); - transform: translateY(-50px); - } - 100% { - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@keyframes headerNoOpacity { - 0% { - -webkit-transform: translateY(-50px); - -moz-transform: translateY(-50px); - -o-transform: translateY(-50px); - -ms-transform: translateY(-50px); - transform: translateY(-50px); - } - 100% { - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-moz-keyframes bottom-top { - 0% { - margin-top: 50px; - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - margin-top: 0; - opacity: 1; - -ms-filter: none; - filter: none; - } -} -@-webkit-keyframes bottom-top { - 0% { - margin-top: 50px; - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - margin-top: 0; - opacity: 1; - -ms-filter: none; - filter: none; - } -} -@-o-keyframes bottom-top { - 0% { - margin-top: 50px; - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - margin-top: 0; - opacity: 1; - -ms-filter: none; - filter: none; - } -} -@keyframes bottom-top { - 0% { - margin-top: 50px; - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - margin-top: 0; - opacity: 1; - -ms-filter: none; - filter: none; - } -} -@-moz-keyframes titleScale { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } -} -@-webkit-keyframes titleScale { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } -} -@-o-keyframes titleScale { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } -} -@keyframes titleScale { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } -} -@-moz-keyframes search_close { - 0% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } - 100% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } -} -@-webkit-keyframes search_close { - 0% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } - 100% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } -} -@-o-keyframes search_close { - 0% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } - 100% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } -} -@keyframes search_close { - 0% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } - 100% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } -} -@-moz-keyframes to_show { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - } -} -@-webkit-keyframes to_show { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - } -} -@-o-keyframes to_show { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - } -} -@keyframes to_show { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - } -} -@-moz-keyframes to_hide { - 0% { - opacity: 1; - -ms-filter: none; - filter: none; - } - 100% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } -} -@-webkit-keyframes to_hide { - 0% { - opacity: 1; - -ms-filter: none; - filter: none; - } - 100% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } -} -@-o-keyframes to_hide { - 0% { - opacity: 1; - -ms-filter: none; - filter: none; - } - 100% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } -} -@keyframes to_hide { - 0% { - opacity: 1; - -ms-filter: none; - filter: none; - } - 100% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } -} -@-moz-keyframes ribbon_to_show { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } -} -@-webkit-keyframes ribbon_to_show { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } -} -@-o-keyframes ribbon_to_show { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } -} -@keyframes ribbon_to_show { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - } - 100% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } -} -@-moz-keyframes avatar_turn_around { - from { - -webkit-transform: rotate(0); - -moz-transform: rotate(0); - -o-transform: rotate(0); - -ms-transform: rotate(0); - transform: rotate(0); - } - to { - -webkit-transform: rotate(360deg); - -moz-transform: rotate(360deg); - -o-transform: rotate(360deg); - -ms-transform: rotate(360deg); - transform: rotate(360deg); - } -} -@-webkit-keyframes avatar_turn_around { - from { - -webkit-transform: rotate(0); - -moz-transform: rotate(0); - -o-transform: rotate(0); - -ms-transform: rotate(0); - transform: rotate(0); - } - to { - -webkit-transform: rotate(360deg); - -moz-transform: rotate(360deg); - -o-transform: rotate(360deg); - -ms-transform: rotate(360deg); - transform: rotate(360deg); - } -} -@-o-keyframes avatar_turn_around { - from { - -webkit-transform: rotate(0); - -moz-transform: rotate(0); - -o-transform: rotate(0); - -ms-transform: rotate(0); - transform: rotate(0); - } - to { - -webkit-transform: rotate(360deg); - -moz-transform: rotate(360deg); - -o-transform: rotate(360deg); - -ms-transform: rotate(360deg); - transform: rotate(360deg); - } -} -@keyframes avatar_turn_around { - from { - -webkit-transform: rotate(0); - -moz-transform: rotate(0); - -o-transform: rotate(0); - -ms-transform: rotate(0); - transform: rotate(0); - } - to { - -webkit-transform: rotate(360deg); - -moz-transform: rotate(360deg); - -o-transform: rotate(360deg); - -ms-transform: rotate(360deg); - transform: rotate(360deg); - } -} -@-moz-keyframes sub_menus { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(10px); - -moz-transform: translateY(10px); - -o-transform: translateY(10px); - -ms-transform: translateY(10px); - transform: translateY(10px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-webkit-keyframes sub_menus { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(10px); - -moz-transform: translateY(10px); - -o-transform: translateY(10px); - -ms-transform: translateY(10px); - transform: translateY(10px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-o-keyframes sub_menus { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(10px); - -moz-transform: translateY(10px); - -o-transform: translateY(10px); - -ms-transform: translateY(10px); - transform: translateY(10px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@keyframes sub_menus { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(10px); - -moz-transform: translateY(10px); - -o-transform: translateY(10px); - -ms-transform: translateY(10px); - transform: translateY(10px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-moz-keyframes donate_effcet { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(-20px); - -moz-transform: translateY(-20px); - -o-transform: translateY(-20px); - -ms-transform: translateY(-20px); - transform: translateY(-20px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-webkit-keyframes donate_effcet { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(-20px); - -moz-transform: translateY(-20px); - -o-transform: translateY(-20px); - -ms-transform: translateY(-20px); - transform: translateY(-20px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-o-keyframes donate_effcet { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(-20px); - -moz-transform: translateY(-20px); - -o-transform: translateY(-20px); - -ms-transform: translateY(-20px); - transform: translateY(-20px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@keyframes donate_effcet { - 0% { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transform: translateY(-20px); - -moz-transform: translateY(-20px); - -o-transform: translateY(-20px); - -ms-transform: translateY(-20px); - transform: translateY(-20px); - } - 100% { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } -} -@-moz-keyframes sidebarItem { - 0% { - -webkit-transform: translateX(200px); - -moz-transform: translateX(200px); - -o-transform: translateX(200px); - -ms-transform: translateX(200px); - transform: translateX(200px); - } - 100% { - -webkit-transform: translateX(0); - -moz-transform: translateX(0); - -o-transform: translateX(0); - -ms-transform: translateX(0); - transform: translateX(0); - } -} -@-webkit-keyframes sidebarItem { - 0% { - -webkit-transform: translateX(200px); - -moz-transform: translateX(200px); - -o-transform: translateX(200px); - -ms-transform: translateX(200px); - transform: translateX(200px); - } - 100% { - -webkit-transform: translateX(0); - -moz-transform: translateX(0); - -o-transform: translateX(0); - -ms-transform: translateX(0); - transform: translateX(0); - } -} -@-o-keyframes sidebarItem { - 0% { - -webkit-transform: translateX(200px); - -moz-transform: translateX(200px); - -o-transform: translateX(200px); - -ms-transform: translateX(200px); - transform: translateX(200px); - } - 100% { - -webkit-transform: translateX(0); - -moz-transform: translateX(0); - -o-transform: translateX(0); - -ms-transform: translateX(0); - transform: translateX(0); - } -} -@keyframes sidebarItem { - 0% { - -webkit-transform: translateX(200px); - -moz-transform: translateX(200px); - -o-transform: translateX(200px); - -ms-transform: translateX(200px); - transform: translateX(200px); - } - 100% { - -webkit-transform: translateX(0); - -moz-transform: translateX(0); - -o-transform: translateX(0); - -ms-transform: translateX(0); - transform: translateX(0); - } -} -:root { - --global-font-size: 14px; - --global-bg: #fff; - --font-color: #4c4948; - --hr-border: #a4d8fa; - --hr-before-color: #80c8f8; - --search-bg: #f6f8fa; - --search-input-color: #4c4948; - --search-result-title: #4c4948; - --preloader-bg: #37474f; - --preloader-color: #fff; - --tab-border-color: #f0f0f0; - --tab-botton-bg: #f0f0f0; - --tab-botton-color: #1f2d3d; - --tab-button-hover-bg: #dcdcdc; - --tab-button-active-bg: #fff; - --card-bg: #fff; - --sidebar-bg: #f6f8fa; - --btn-hover-color: #ff7242; - --btn-color: #fff; - --btn-bg: #49b1f5; - --text-bg-hover: rgba(73,177,245,0.7); - --light-grey: #eee; - --dark-grey: #cacaca; - --white: #fff; - --text-highlight-color: #1f2d3d; - --blockquote-color: #6a737d; - --blockquote-bg: rgba(73,177,245,0.1); - --reward-pop: #f5f5f5; - --toc-link-color: #666261; - --card-box-shadow: 0 3px 8px 6px rgba(7,17,27,0.05); - --card-hover-box-shadow: 0 3px 8px 6px rgba(7,17,27,0.09); - --pseudo-hover: #ff7242; - --headline-presudo: #a0a0a0; - --scrollbar-color: #49b1f5; -} -body { - position: relative; - min-height: 100%; - background: var(--global-bg); - color: var(--font-color); - font-size: var(--global-font-size); - font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Lato, Roboto, 'PingFang SC', 'Microsoft YaHei', sans-serif; - line-height: 2; - -webkit-tap-highlight-color: rgba(0,0,0,0); -} -*::-webkit-scrollbar { - width: 8px; - height: 8px; -} -*::-webkit-scrollbar-thumb { - background: var(--scrollbar-color); -} -*::-webkit-scrollbar-track { - background-color: transparent; -} -* { - scrollbar-width: thin; - scrollbar-color: var(--scrollbar-color) transparent; -} -input::placeholder { - color: var(--font-color); -} -h1, -h2, -h3, -h4, -h5, -h6 { - position: relative; - margin: 20px 0 14px; - color: var(--text-highlight-color); - font-weight: bold; -} -h1 code, -h2 code, -h3 code, -h4 code, -h5 code, -h6 code { - font-size: inherit !important; -} -* { - -webkit-box-sizing: border-box; - -moz-box-sizing: border-box; - box-sizing: border-box; -} -hr { - position: relative; - margin: 40px auto; - border: 2px dashed var(--hr-border); - width: calc(100% - 4px); -} -hr:hover:before { - left: calc(95% - 20px); -} -hr:before { - position: absolute; - top: -10px; - left: 5%; - z-index: 1; - color: var(--hr-before-color); - content: '\f0c4'; - font-size: 20px; - line-height: 1; - -webkit-transition: all 1s ease-in-out; - -moz-transition: all 1s ease-in-out; - -o-transition: all 1s ease-in-out; - -ms-transition: all 1s ease-in-out; - transition: all 1s ease-in-out; -} -.table-wrap { - overflow-x: scroll; - margin: 0 0 20px; -} -table { - display: table; - width: 100%; - border-spacing: 0; - border-collapse: collapse; - empty-cells: show; -} -table thead { - background: rgba(153,169,191,0.1); -} -table th, -table td { - padding: 6px 12px; - border: 1px solid var(--light-grey); - vertical-align: middle; -} -*::selection { - background: #00c4b6; - color: #f7f7f7; -} -button { - padding: 0; - outline: 0; - border: none; - background: none; - cursor: pointer; - touch-action: manipulation; -} -a { - color: #99a9bf; - text-decoration: none; - word-wrap: break-word; - -webkit-transition: all 0.2s; - -moz-transition: all 0.2s; - -o-transition: all 0.2s; - -ms-transition: all 0.2s; - transition: all 0.2s; - overflow-wrap: break-word; -} -a:hover { - color: #49b1f5; -} -.is-center { - text-align: center; -} -.copy-true { - -webkit-user-select: all; - -moz-user-select: all; - -ms-user-select: all; - user-select: all; -} -.pull-left { - float: left; -} -.pull-right { - float: right; -} -img[src=''], -img:not([src]) { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); -} -.img-alt { - margin: -10px 0 10px; - color: #858585; -} -.img-alt:hover { - text-decoration: none !important; -} -blockquote { - margin: 0 0 20px; - padding: 12px 15px; - border-left: 3px solid #49b1f5; - background-color: var(--blockquote-bg); - color: var(--blockquote-color); -} -blockquote footer cite:before { - padding: 0 5px; - content: '—'; -} -blockquote > :last-child { - margin-bottom: 0 !important; -} -:root { - --hl-color: #eff; - --hl-bg: #212121; - --hltools-bg: #1c1c1c; - --hltools-color: rgba(238,255,255,0.8); - --hlnumber-bg: #212121; - --hlnumber-color: rgba(238,255,255,0.5); - --hlscrollbar-bg: #353535; - --hlexpand-bg: linear-gradient(180deg, rgba(33,33,33,0.6), rgba(33,33,33,0.9)); -} -figure.highlight table { - scrollbar-color: var(--hlscrollbar-bg) transparent; -} -figure.highlight table::-webkit-scrollbar-thumb { - background: var(--hlscrollbar-bg); -} -figure.highlight pre .deletion { - color: #bf42bf; -} -figure.highlight pre .addition { - color: #105ede; -} -figure.highlight pre .meta { - color: #c792ea; -} -figure.highlight pre .comment { - color: #969896; -} -figure.highlight pre .variable, -figure.highlight pre .attribute, -figure.highlight pre .regexp, -figure.highlight pre .ruby .constant, -figure.highlight pre .xml .tag .title, -figure.highlight pre .xml .pi, -figure.highlight pre .xml .doctype, -figure.highlight pre .html .doctype, -figure.highlight pre .css .id, -figure.highlight pre .tag .name, -figure.highlight pre .css .class, -figure.highlight pre .css .pseudo { - color: #ff5370; -} -figure.highlight pre .tag { - color: #89ddff; -} -figure.highlight pre .number, -figure.highlight pre .preprocessor, -figure.highlight pre .literal, -figure.highlight pre .params, -figure.highlight pre .constant, -figure.highlight pre .command { - color: #f78c6c; -} -figure.highlight pre .built_in { - color: #ffcb6b; -} -figure.highlight pre .ruby .class .title, -figure.highlight pre .css .rules .attribute, -figure.highlight pre .string, -figure.highlight pre .value, -figure.highlight pre .inheritance, -figure.highlight pre .header, -figure.highlight pre .ruby .symbol, -figure.highlight pre .xml .cdata, -figure.highlight pre .special, -figure.highlight pre .number, -figure.highlight pre .formula { - color: #c3e88d; -} -figure.highlight pre .keyword, -figure.highlight pre .title, -figure.highlight pre .css .hexcolor { - color: #89ddff; -} -figure.highlight pre .function, -figure.highlight pre .python .decorator, -figure.highlight pre .python .title, -figure.highlight pre .ruby .function .title, -figure.highlight pre .ruby .title .keyword, -figure.highlight pre .perl .sub, -figure.highlight pre .javascript .title, -figure.highlight pre .coffeescript .title { - color: #82aaff; -} -figure.highlight pre .tag .attr, -figure.highlight pre .javascript .function { - color: #c792ea; -} -#article-container figure.highlight .line.marked { - background-color: rgba(97,97,97,0.314); -} -#article-container figure.highlight table { - display: block; - overflow: auto; - border: none; -} -#article-container figure.highlight table td { - padding: 0; - border: none; -} -#article-container figure.highlight .gutter pre { - padding-right: 10px; - padding-left: 10px; - background-color: var(--hlnumber-bg); - color: var(--hlnumber-color); - text-align: right; -} -#article-container figure.highlight .code pre { - padding-right: 10px; - padding-left: 10px; - width: 100%; -} -#article-container pre, -#article-container figure.highlight { - overflow: auto; - margin: 0 0 20px; - padding: 0; - background: var(--hl-bg); - color: var(--hl-color); - line-height: 1.6; -} -#article-container pre, -#article-container code { - font-size: var(--global-font-size); - font-family: consolas, Menlo, 'PingFang SC', 'Microsoft YaHei', sans-serif !important; -} -#article-container code { - padding: 2px 4px; - background: rgba(27,31,35,0.05); - color: #f47466; -} -#article-container pre { - padding: 10px 20px; -} -#article-container pre code { - padding: 0; - background: none; - color: var(--hl-color); - text-shadow: none; -} -#article-container figure.highlight { - position: relative; -} -#article-container figure.highlight pre { - margin: 0; - padding: 8px 0; - border: none; -} -#article-container figure.highlight figcaption, -#article-container figure.highlight .caption { - padding: 6px 0 2px 14px; - font-size: var(--global-font-size); - line-height: 1em; -} -#article-container figure.highlight figcaption a, -#article-container figure.highlight .caption a { - float: right; - padding-right: 10px; - color: var(--hl-color); -} -#article-container figure.highlight figcaption a:hover, -#article-container figure.highlight .caption a:hover { - border-bottom-color: var(--hl-color); -} -#article-container .highlight-tools { - position: relative; - display: -webkit-box; - display: -moz-box; - display: -webkit-flex; - display: -ms-flexbox; - display: box; - display: flex; - -webkit-box-align: center; - -moz-box-align: center; - -o-box-align: center; - -ms-flex-align: center; - -webkit-align-items: center; - align-items: center; - overflow: hidden; - min-height: 24px; - height: 2.15em; - background: var(--hltools-bg); - color: var(--hltools-color); - font-size: var(--global-font-size); -} -#article-container .highlight-tools.closed ~ * { - display: none; -} -#article-container .highlight-tools .expand { - position: absolute; - padding: 0.57em 0.7em; - cursor: pointer; - -webkit-transition: -webkit-transform 0.3s; - -moz-transition: -moz-transform 0.3s; - -o-transition: -o-transform 0.3s; - -ms-transition: -ms-transform 0.3s; - transition: transform 0.3s; -} -#article-container .highlight-tools .expand + .code-lang { - left: 1.7em; -} -#article-container .highlight-tools .expand.closed { - -webkit-transition: all 0.3s; - -moz-transition: all 0.3s; - -o-transition: all 0.3s; - -ms-transition: all 0.3s; - transition: all 0.3s; - -webkit-transform: rotate(-90deg) !important; - -moz-transform: rotate(-90deg) !important; - -o-transform: rotate(-90deg) !important; - -ms-transform: rotate(-90deg) !important; - transform: rotate(-90deg) !important; -} -#article-container .highlight-tools .code-lang { - position: absolute; - left: 14px; - text-transform: uppercase; - font-weight: bold; - font-size: 1.15em; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} -#article-container .highlight-tools .copy-notice { - position: absolute; - right: 2.4em; - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transition: opacity 0.4s; - -moz-transition: opacity 0.4s; - -o-transition: opacity 0.4s; - -ms-transition: opacity 0.4s; - transition: opacity 0.4s; -} -#article-container .highlight-tools .copy-button { - position: absolute; - right: 14px; - cursor: pointer; - -webkit-transition: color 0.2s; - -moz-transition: color 0.2s; - -o-transition: color 0.2s; - -ms-transition: color 0.2s; - transition: color 0.2s; -} -#article-container .highlight-tools .copy-button:hover { - color: #49b1f5; -} -#article-container .gutter { - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} -#article-container .gist table { - width: auto; -} -#article-container .gist table td { - border: none; -} -#article-container figure.highlight { - margin: 0 0 24px; - border-radius: 7px; - -webkit-box-shadow: 0 5px 10px 0 rgba(0,0,0,0.4); - box-shadow: 0 5px 10px 0 rgba(0,0,0,0.4); - -webkit-transform: translateZ(0); -} -#article-container figure.highlight .highlight-tools:after { - position: absolute; - left: 14px; - width: 12px; - height: 12px; - border-radius: 50%; - background: #fc625d; - -webkit-box-shadow: 20px 0 #fdbc40, 40px 0 #35cd4b; - box-shadow: 20px 0 #fdbc40, 40px 0 #35cd4b; - content: ' '; -} -#article-container figure.highlight .highlight-tools .expand { - right: 0; -} -#article-container figure.highlight .highlight-tools .expand.closed { - -webkit-transition: all 0.3s; - -moz-transition: all 0.3s; - -o-transition: all 0.3s; - -ms-transition: all 0.3s; - transition: all 0.3s; - -webkit-transform: rotate(90deg) !important; - -moz-transform: rotate(90deg) !important; - -o-transform: rotate(90deg) !important; - -ms-transform: rotate(90deg) !important; - transform: rotate(90deg) !important; -} -#article-container figure.highlight .highlight-tools .expand ~ .copy-notice { - right: 3.45em; -} -#article-container figure.highlight .highlight-tools .expand ~ .copy-button { - right: 2.1em; -} -#article-container figure.highlight .highlight-tools .code-lang { - left: 75px; -} -#article-container .code-expand-btn { - position: absolute; - bottom: 0; - z-index: 10; - width: 100%; - background: var(--hlexpand-bg); - text-align: center; - font-size: var(--global-font-size); - cursor: pointer; -} -#article-container .code-expand-btn i { - padding: 6px 0; - color: var(--hlnumber-color); - -webkit-animation: code-expand-key 1.2s infinite; - -moz-animation: code-expand-key 1.2s infinite; - -o-animation: code-expand-key 1.2s infinite; - -ms-animation: code-expand-key 1.2s infinite; - animation: code-expand-key 1.2s infinite; -} -#article-container .code-expand-btn.expand-done > i { - -webkit-transform: rotate(180deg); - -moz-transform: rotate(180deg); - -o-transform: rotate(180deg); - -ms-transform: rotate(180deg); - transform: rotate(180deg); -} -#article-container .code-expand-btn.expand-done + table, -#article-container .code-expand-btn.expand-done + pre { - margin-bottom: 1.8em; -} -#article-container .code-expand-btn:not(.expand-done) ~ table, -#article-container .code-expand-btn:not(.expand-done) ~ pre { - overflow: hidden; - height: 300px; -} -@-moz-keyframes code-expand-key { - 0% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } - 50% { - opacity: 0.1; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"; - filter: alpha(opacity=10); - } - 100% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } -} -@-webkit-keyframes code-expand-key { - 0% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } - 50% { - opacity: 0.1; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"; - filter: alpha(opacity=10); - } - 100% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } -} -@-o-keyframes code-expand-key { - 0% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } - 50% { - opacity: 0.1; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"; - filter: alpha(opacity=10); - } - 100% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } -} -@keyframes code-expand-key { - 0% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } - 50% { - opacity: 0.1; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"; - filter: alpha(opacity=10); - } - 100% { - opacity: 0.6; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; - filter: alpha(opacity=60); - } -} -.error404 #error-wrap { - position: absolute; - top: 50%; - right: 0; - left: 0; - margin: 0 auto; - padding: 60px 20px 0; - max-width: 1000px; - -webkit-transform: translate(0, -50%); - -moz-transform: translate(0, -50%); - -o-transform: translate(0, -50%); - -ms-transform: translate(0, -50%); - transform: translate(0, -50%); -} -.error404 #error-wrap .error-content { - overflow: hidden; - margin: 0 20px; - height: 360px; -} -@media screen and (max-width: 768px) { - .error404 #error-wrap .error-content { - margin: 0; - height: 500px; - } -} -.error404 #error-wrap .error-content .error-img { - display: inline-block; - overflow: hidden; - width: 50%; - height: 100%; -} -@media screen and (max-width: 768px) { - .error404 #error-wrap .error-content .error-img { - width: 100%; - height: 45%; - } -} -.error404 #error-wrap .error-content .error-img img { - background-color: #49b1f5; -} -.error404 #error-wrap .error-content .error-info { - display: -webkit-inline-box; - display: -moz-inline-box; - display: -webkit-inline-flex; - display: -ms-inline-flexbox; - display: inline-box; - display: inline-flex; - -webkit-box-orient: vertical; - -moz-box-orient: vertical; - -o-box-orient: vertical; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - -webkit-box-pack: center; - -moz-box-pack: center; - -o-box-pack: center; - -ms-flex-pack: center; - -webkit-justify-content: center; - justify-content: center; - -ms-flex-line-pack: center; - -webkit-align-content: center; - align-content: center; - width: 50%; - height: 100%; - vertical-align: top; - text-align: center; -} -@media screen and (max-width: 768px) { - .error404 #error-wrap .error-content .error-info { - width: 100%; - height: 55%; - } -} -.error404 #error-wrap .error-content .error-info .error_title { - margin-top: -0.6em; - font-size: 9em; -} -@media screen and (max-width: 768px) { - .error404 #error-wrap .error-content .error-info .error_title { - font-size: 8em; - } -} -.error404 #error-wrap .error-content .error-info .error_subtitle { - margin-top: -3em; - word-break: break-word; - font-size: 1.6em; - -webkit-line-clamp: 2; -} -.error404 + #rightside { - display: none; -} -.article-sort { - margin-left: 10px; - padding-left: 20px; - border-left: 2px solid #aadafa; -} -.article-sort-title { - position: relative; - margin-left: 10px; - padding-bottom: 20px; - padding-left: 20px; - font-size: 1.72em; -} -.article-sort-title:hover:before { - border-color: var(--pseudo-hover); -} -.article-sort-title:before { - position: absolute; - top: calc(((100% - 36px) / 2)); - left: -9px; - z-index: 1; - width: 10px; - height: 10px; - border: 5px solid #49b1f5; - border-radius: 10px; - background: var(--card-bg); - content: ''; - line-height: 10px; - -webkit-transition: all 0.2s ease-in-out; - -moz-transition: all 0.2s ease-in-out; - -o-transition: all 0.2s ease-in-out; - -ms-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; -} -.article-sort-title:after { - position: absolute; - bottom: 0; - left: 0; - z-index: 0; - width: 2px; - height: 1.5em; - background: #aadafa; - content: ''; -} -.article-sort-item { - position: relative; - display: -webkit-box; - display: -moz-box; - display: -webkit-flex; - display: -ms-flexbox; - display: box; - display: flex; - -webkit-box-align: center; - -moz-box-align: center; - -o-box-align: center; - -ms-flex-align: center; - -webkit-align-items: center; - align-items: center; - margin: 0 0 20px 10px; - -webkit-transition: all 0.2s ease-in-out; - -moz-transition: all 0.2s ease-in-out; - -o-transition: all 0.2s ease-in-out; - -ms-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; -} -.article-sort-item:hover:before { - border-color: var(--pseudo-hover); -} -.article-sort-item:before { - position: absolute; - left: calc(-20px - 17px); - width: 6px; - height: 6px; - border: 3px solid #49b1f5; - border-radius: 6px; - background: var(--card-bg); - content: ''; - -webkit-transition: all 0.2s ease-in-out; - -moz-transition: all 0.2s ease-in-out; - -o-transition: all 0.2s ease-in-out; - -ms-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; -} -.article-sort-item.no-article-cover { - height: 80px; -} -.article-sort-item.no-article-cover .article-sort-item-info { - padding: 0; -} -.article-sort-item.year { - font-size: 1.43em; -} -.article-sort-item.year:hover:before { - border-color: #49b1f5; -} -.article-sort-item.year:before { - border-color: var(--pseudo-hover); -} -.article-sort-item-time { - color: #858585; - font-size: 95%; -} -.article-sort-item-time time { - padding-left: 6px; - cursor: default; -} -.article-sort-item-title { - color: var(--font-color); - font-size: 1.1em; - -webkit-transition: all 0.3s; - -moz-transition: all 0.3s; - -o-transition: all 0.3s; - -ms-transition: all 0.3s; - transition: all 0.3s; - -webkit-line-clamp: 2; -} -.article-sort-item-title:hover { - color: #49b1f5; - -webkit-transform: translateX(10px); - -moz-transform: translateX(10px); - -o-transform: translateX(10px); - -ms-transform: translateX(10px); - transform: translateX(10px); -} -.article-sort-item-img { - overflow: hidden; - width: 80px; - height: 80px; -} -.article-sort-item-info { - -webkit-box-flex: 1; - -moz-box-flex: 1; - -o-box-flex: 1; - box-flex: 1; - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; - padding: 0 16px; -} -.category-lists .category-title { - font-size: 2.57em; -} -@media screen and (max-width: 768px) { - .category-lists .category-title { - font-size: 2em; - } -} -.category-lists .category-list { - margin-bottom: 0; -} -.category-lists .category-list a { - color: var(--font-color); -} -.category-lists .category-list a:hover { - color: #49b1f5; -} -.category-lists .category-list .category-list-count { - margin-left: 8px; - color: #858585; -} -.category-lists .category-list .category-list-count:before { - content: '('; -} -.category-lists .category-list .category-list-count:after { - content: ')'; -} -.category-lists ul { - padding: 0 0 0 20px; -} -.category-lists ul ul { - padding-left: 4px; -} -.category-lists ul li { - position: relative; - margin: 6px 0; - padding: 0.12em 0.4em 0.12em 1.4em; -} -#body-wrap { - display: -webkit-box; - display: -moz-box; - display: -webkit-flex; - display: -ms-flexbox; - display: box; - display: flex; - -webkit-box-orient: vertical; - -moz-box-orient: vertical; - -o-box-orient: vertical; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - min-height: 100vh; -} -.layout { - display: -webkit-box; - display: -moz-box; - display: -webkit-flex; - display: -ms-flexbox; - display: box; - display: flex; - -webkit-box-flex: 1; - -moz-box-flex: 1; - -o-box-flex: 1; - box-flex: 1; - -webkit-flex: 1 auto; - -ms-flex: 1 auto; - flex: 1 auto; - margin: 0 auto; - padding: 40px 15px; - max-width: 1200px; - width: 100%; -} -@media screen and (max-width: 900px) { - .layout { - -webkit-box-orient: vertical; - -moz-box-orient: vertical; - -o-box-orient: vertical; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - } -} -@media screen and (max-width: 768px) { - .layout { - padding: 20px 5px; - } -} -@media screen and (min-width: 2000px) { - .layout { - max-width: 1500px; - } -} -.layout > div:first-child:not(.recent-posts) { - -webkit-align-self: flex-start; - align-self: flex-start; - -ms-flex-item-align: start; - padding: 50px 40px; -} -@media screen and (max-width: 768px) { - .layout > div:first-child:not(.recent-posts) { - padding: 36px 14px; - } -} -.layout > div:first-child { - width: 74%; - -webkit-transition: all 0.3s; - -moz-transition: all 0.3s; - -o-transition: all 0.3s; - -ms-transition: all 0.3s; - transition: all 0.3s; -} -@media screen and (max-width: 900px) { - .layout > div:first-child { - width: 100% !important; - } -} -@media screen and (min-width: 900px) { - .layout > div:first-child { - -webkit-box-ordinal-group: 2; - -moz-box-ordinal-group: 2; - -o-box-ordinal-group: 2; - -ms-flex-order: 2; - -webkit-order: 2; - order: 2; - } -} -.layout.hide-aside { - max-width: 1000px; -} -@media screen and (min-width: 2000px) { - .layout.hide-aside { - max-width: 1300px; - } -} -.layout.hide-aside > div { - width: 100% !important; -} -.apple #page-header.full_page { - background-attachment: scroll !important; -} -.apple .recent-post-item, -.apple .avatar-img, -.apple .flink-item-icon { - -webkit-transform: translateZ(0); - -moz-transform: translateZ(0); - -o-transform: translateZ(0); - -ms-transform: translateZ(0); - transform: translateZ(0); -} -#article-container .flink { - margin-bottom: 20px; -} -#article-container .flink .flink-list { - overflow: auto; - padding: 10px 10px 0; - text-align: center; -} -#article-container .flink .flink-list > .flink-list-item { - position: relative; - float: left; - overflow: hidden; - margin: 15px 7px; - width: calc(100% / 3 - 15px); - height: 90px; - border-radius: 8px; - line-height: 17px; - -webkit-transform: translateZ(0); -} -@media screen and (max-width: 1024px) { - #article-container .flink .flink-list > .flink-list-item { - width: calc(50% - 15px) !important; - } -} -@media screen and (max-width: 600px) { - #article-container .flink .flink-list > .flink-list-item { - width: calc(100% - 15px) !important; - } -} -#article-container .flink .flink-list > .flink-list-item:hover .flink-item-icon { - margin-left: -10px; - width: 0; -} -#article-container .flink .flink-list > .flink-list-item:before { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: -1; - background: var(--text-bg-hover); - content: ''; - -webkit-transition: -webkit-transform 0.3s ease-out; - -moz-transition: -moz-transform 0.3s ease-out; - -o-transition: -o-transform 0.3s ease-out; - -ms-transition: -ms-transform 0.3s ease-out; - transition: transform 0.3s ease-out; - -webkit-transform: scale(0); - -moz-transform: scale(0); - -o-transform: scale(0); - -ms-transform: scale(0); - transform: scale(0); -} -#article-container .flink .flink-list > .flink-list-item:hover:before, -#article-container .flink .flink-list > .flink-list-item:focus:before, -#article-container .flink .flink-list > .flink-list-item:active:before { - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); -} -#article-container .flink .flink-list > .flink-list-item a { - color: var(--font-color); - text-decoration: none; -} -#article-container .flink .flink-list > .flink-list-item a .flink-item-icon { - float: left; - overflow: hidden; - margin: 15px 10px; - width: 60px; - height: 60px; - border-radius: 35px; - -webkit-transition: width 0.3s ease-out; - -moz-transition: width 0.3s ease-out; - -o-transition: width 0.3s ease-out; - -ms-transition: width 0.3s ease-out; - transition: width 0.3s ease-out; -} -#article-container .flink .flink-list > .flink-list-item a .flink-item-icon img { - width: 100%; - height: 100%; - -webkit-transition: filter 375ms ease-in 0.2s, -webkit-transform 0.3s; - -moz-transition: filter 375ms ease-in 0.2s, -moz-transform 0.3s; - -o-transition: filter 375ms ease-in 0.2s, -o-transform 0.3s; - -ms-transition: filter 375ms ease-in 0.2s, -ms-transform 0.3s; - transition: filter 375ms ease-in 0.2s, transform 0.3s; - object-fit: cover; -} -#article-container .flink .flink-list > .flink-list-item a .img-alt { - display: none; -} -#article-container .flink .flink-item-name { - padding: 16px 10px 0 0; - height: 40px; - font-weight: bold; - font-size: 1.43em; -} -#article-container .flink .flink-item-desc { - padding: 16px 10px 16px 0; - height: 50px; - font-size: 0.93em; -} -#article-container .flink .flink-name { - margin-bottom: 5px; - font-weight: bold; - font-size: 1.5em; -} -#recent-posts > .recent-post-item:not(:first-child) { - margin-top: 20px; -} -#recent-posts > .recent-post-item { - display: -webkit-box; - display: -moz-box; - display: -webkit-flex; - display: -ms-flexbox; - display: box; - display: flex; - -webkit-box-orient: horizontal; - -moz-box-orient: horizontal; - -o-box-orient: horizontal; - -webkit-flex-direction: row; - -ms-flex-direction: row; - flex-direction: row; - -webkit-box-align: center; - -moz-box-align: center; - -o-box-align: center; - -ms-flex-align: center; - -webkit-align-items: center; - align-items: center; - overflow: hidden; - height: 18em; -} -@media screen and (max-width: 768px) { - #recent-posts > .recent-post-item { - -webkit-box-orient: vertical; - -moz-box-orient: vertical; - -o-box-orient: vertical; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; - height: auto; - } -} -#recent-posts > .recent-post-item:hover img.post_bg { - -webkit-transform: scale(1.1); - -moz-transform: scale(1.1); - -o-transform: scale(1.1); - -ms-transform: scale(1.1); - transform: scale(1.1); -} -#recent-posts > .recent-post-item.ads-wrap { - display: block !important; - height: auto !important; -} -#recent-posts > .recent-post-item .post_cover { - overflow: hidden; - width: 44%; - height: 100%; -} -@media screen and (max-width: 768px) { - #recent-posts > .recent-post-item .post_cover { - width: 100%; - height: 230px; - } -} -#recent-posts > .recent-post-item .post_cover.right { - -webkit-box-ordinal-group: 1; - -moz-box-ordinal-group: 1; - -o-box-ordinal-group: 1; - -ms-flex-order: 1; - -webkit-order: 1; - order: 1; -} -@media screen and (max-width: 768px) { - #recent-posts > .recent-post-item .post_cover.right { - -webkit-box-ordinal-group: 0; - -moz-box-ordinal-group: 0; - -o-box-ordinal-group: 0; - -ms-flex-order: 0; - -webkit-order: 0; - order: 0; - } -} -#recent-posts > .recent-post-item >.recent-post-info { - padding: 0 40px; - width: 57%; -} -@media screen and (max-width: 768px) { - #recent-posts > .recent-post-item >.recent-post-info { - padding: 20px 20px 30px; - width: 100%; - } -} -#recent-posts > .recent-post-item >.recent-post-info.no-cover { - width: 100%; -} -@media screen and (max-width: 768px) { - #recent-posts > .recent-post-item >.recent-post-info.no-cover { - padding: 30px 20px; - } -} -#recent-posts > .recent-post-item >.recent-post-info > .article-title { - color: var(--text-highlight-color); - font-size: 1.72em; - line-height: 1.4; - -webkit-transition: all 0.2s ease-in-out; - -moz-transition: all 0.2s ease-in-out; - -o-transition: all 0.2s ease-in-out; - -ms-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; - -webkit-line-clamp: 2; -} -@media screen and (max-width: 768px) { - #recent-posts > .recent-post-item >.recent-post-info > .article-title { - font-size: 1.43em; - } -} -#recent-posts > .recent-post-item >.recent-post-info > .article-title:hover { - color: #49b1f5; -} -#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap { - margin: 6px 0; - color: #858585; - font-size: 90%; -} -#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap > .post-meta-date { - cursor: default; -} -#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap .sticky { - color: #ff7242; -} -#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap i { - margin: 0 4px 0 0; -} -#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap .fa-spinner { - margin: 0; -} -#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap .article-meta-label { - padding-right: 4px; -} -#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap .article-meta-separator { - margin: 0 6px; -} -#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap .article-meta-link { - margin: 0 4px; -} -#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap a { - color: #858585; -} -#recent-posts > .recent-post-item >.recent-post-info > .article-meta-wrap a:hover { - color: #49b1f5; - text-decoration: underline; -} -#recent-posts > .recent-post-item >.recent-post-info > .content { - -webkit-line-clamp: 2; -} -.tag-cloud-list a { - display: inline-block; - padding: 0 8px; - -webkit-transition: all 0.3s; - -moz-transition: all 0.3s; - -o-transition: all 0.3s; - -ms-transition: all 0.3s; - transition: all 0.3s; -} -.tag-cloud-list a:hover { - color: #49b1f5 !important; - -webkit-transform: scale(1.1); - -moz-transform: scale(1.1); - -o-transform: scale(1.1); - -ms-transform: scale(1.1); - transform: scale(1.1); -} -@media screen and (max-width: 768px) { - .tag-cloud-list a { - zoom: 0.85; - } -} -.tag-cloud-title { - font-size: 2.57em; -} -@media screen and (max-width: 768px) { - .tag-cloud-title { - font-size: 2em; - } -} -h1.page-title + .tag-cloud-list { - text-align: left; -} -#aside-content { - width: 26%; -} -@media screen and (min-width: 900px) { - #aside-content { - padding-right: 15px; - } -} -@media screen and (max-width: 900px) { - #aside-content { - width: 100%; - } -} -#aside-content > .card-widget:first-child { - margin-top: 0; -} -@media screen and (max-width: 900px) { - #aside-content > .card-widget:first-child { - margin-top: 20px; - } -} -#aside-content .card-widget { - position: relative; - overflow: hidden; - margin-top: 20px; - padding: 20px 24px; -} -#aside-content .card-info .author-info__name { - font-weight: 500; - font-size: 1.57em; -} -#aside-content .card-info .author-info__description { - margin-top: -0.42em; -} -#aside-content .card-info .card-info-data { - margin: 14px 0 4px; -} -#aside-content .card-info .card-info-social-icons { - margin: 6px 0 -6px; -} -#aside-content .card-info .card-info-social-icons .social-icon { - margin: 0 10px; - color: var(--font-color); - font-size: 1.4em; -} -#aside-content .card-info .card-info-social-icons i { - -webkit-transition: all 0.3s; - -moz-transition: all 0.3s; - -o-transition: all 0.3s; - -ms-transition: all 0.3s; - transition: all 0.3s; -} -#aside-content .card-info .card-info-social-icons i:hover { - -webkit-transform: rotate(540deg); - -moz-transform: rotate(540deg); - -o-transform: rotate(540deg); - -ms-transform: rotate(540deg); - transform: rotate(540deg); -} -#aside-content .card-info #card-info-btn { - display: block; - margin-top: 14px; - background-color: var(--btn-bg); - color: var(--btn-color); - text-align: center; - line-height: 2.4; -} -#aside-content .card-info #card-info-btn:hover { - background-color: var(--btn-hover-color); -} -#aside-content .card-info #card-info-btn span { - padding-left: 10px; -} -#aside-content .item-headline { - padding-bottom: 6px; - font-size: 1.2em; -} -#aside-content .item-headline span { - margin-left: 6px; -} -@media screen and (min-width: 900px) { - #aside-content .sticky_layout { - position: sticky; - position: -webkit-sticky; - top: 20px; - -webkit-transition: top 0.3s; - -moz-transition: top 0.3s; - -o-transition: top 0.3s; - -ms-transition: top 0.3s; - transition: top 0.3s; - } -} -#aside-content .card-tag-cloud a { - display: inline-block; - padding: 0 4px; -} -#aside-content .card-tag-cloud a:hover { - color: #49b1f5 !important; -} -#aside-content .aside-list > span { - display: block; - margin-bottom: 10px; - text-align: center; -} -#aside-content .aside-list > .aside-list-item { - display: -webkit-box; - display: -moz-box; - display: -webkit-flex; - display: -ms-flexbox; - display: box; - display: flex; - -webkit-box-align: center; - -moz-box-align: center; - -o-box-align: center; - -ms-flex-align: center; - -webkit-align-items: center; - align-items: center; - padding: 6px 0; -} -#aside-content .aside-list > .aside-list-item:first-child { - padding-top: 0; -} -#aside-content .aside-list > .aside-list-item:not(:last-child) { - border-bottom: 1px dashed #f5f5f5; -} -#aside-content .aside-list > .aside-list-item:last-child { - padding-bottom: 0; -} -#aside-content .aside-list > .aside-list-item .thumbnail { - overflow: hidden; - width: 4.2em; - height: 4.2em; -} -#aside-content .aside-list > .aside-list-item .content { - -webkit-box-flex: 1; - -moz-box-flex: 1; - -o-box-flex: 1; - box-flex: 1; - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; - padding-left: 10px; - word-break: break-all; -} -#aside-content .aside-list > .aside-list-item .content > .name { - -webkit-line-clamp: 1; -} -#aside-content .aside-list > .aside-list-item .content > time, -#aside-content .aside-list > .aside-list-item .content > .name { - display: block; - color: #858585; - font-size: 85%; -} -#aside-content .aside-list > .aside-list-item .content > .title, -#aside-content .aside-list > .aside-list-item .content > .comment { - color: var(--font-color); - font-size: 95%; - line-height: 1.5; - -webkit-line-clamp: 2; -} -#aside-content .aside-list > .aside-list-item .content > .title:hover, -#aside-content .aside-list > .aside-list-item .content > .comment:hover { - color: #49b1f5; -} -#aside-content .aside-list > .aside-list-item.no-cover { - min-height: 4.4em; -} -#aside-content .card-archives ul.card-archive-list, -#aside-content .card-categories ul.card-category-list { - margin: 0; - padding: 0; - list-style: none; -} -#aside-content .card-archives ul.card-archive-list > .card-archive-list-item a, -#aside-content .card-categories ul.card-category-list > .card-category-list-item a { - display: -webkit-box; - display: -moz-box; - display: -webkit-flex; - display: -ms-flexbox; - display: box; - display: flex; - -webkit-box-orient: horizontal; - -moz-box-orient: horizontal; - -o-box-orient: horizontal; - -webkit-flex-direction: row; - -ms-flex-direction: row; - flex-direction: row; - padding: 3px 10px; - color: var(--font-color); - -webkit-transition: all 0.4s; - -moz-transition: all 0.4s; - -o-transition: all 0.4s; - -ms-transition: all 0.4s; - transition: all 0.4s; -} -#aside-content .card-archives ul.card-archive-list > .card-archive-list-item a:hover, -#aside-content .card-categories ul.card-category-list > .card-category-list-item a:hover { - padding: 3px 17px; - background-color: var(--text-bg-hover); -} -#aside-content .card-archives ul.card-archive-list > .card-archive-list-item a span:first-child, -#aside-content .card-categories ul.card-category-list > .card-category-list-item a span:first-child { - -webkit-box-flex: 1; - -moz-box-flex: 1; - -o-box-flex: 1; - box-flex: 1; - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; -} -#aside-content .card-categories .card-category-list.child { - padding: 0 0 0 16px; -} -#aside-content .card-categories .card-category-list > .parent > a .card-category-list-name { - width: 70% !important; -} -#aside-content .card-categories .card-category-list > .parent > a .card-category-list-count { - width: calc(100% - 70% - 20px); - text-align: right; -} -#aside-content .card-categories .card-category-list > .parent i { - float: right; - margin-right: -0.5em; - padding: 0.5em; - -webkit-transition: -webkit-transform 0.3s; - -moz-transition: -moz-transform 0.3s; - -o-transition: -o-transform 0.3s; - -ms-transition: -ms-transform 0.3s; - transition: transform 0.3s; - -webkit-transform: rotate(0); - -moz-transform: rotate(0); - -o-transform: rotate(0); - -ms-transform: rotate(0); - transform: rotate(0); -} -#aside-content .card-categories .card-category-list > .parent i.expand { - -webkit-transform: rotate(-90deg); - -moz-transform: rotate(-90deg); - -o-transform: rotate(-90deg); - -ms-transform: rotate(-90deg); - transform: rotate(-90deg); -} -#aside-content .card-webinfo .webinfo .webinfo-item { - display: -webkit-box; - display: -moz-box; - display: -webkit-flex; - display: -ms-flexbox; - display: box; - display: flex; - -webkit-box-align: center; - -moz-box-align: center; - -o-box-align: center; - -ms-flex-align: center; - -webkit-align-items: center; - align-items: center; - padding: 2px 10px 0; -} -#aside-content .card-webinfo .webinfo .webinfo-item div:first-child { - -webkit-box-flex: 1; - -moz-box-flex: 1; - -o-box-flex: 1; - box-flex: 1; - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; - padding-right: 20px; -} -@media screen and (min-width: 901px) { - #aside-content #card-toc { - right: 0 !important; - } -} -@media screen and (max-width: 900px) { - #aside-content #card-toc { - position: fixed; - right: -100%; - bottom: 30px; - z-index: 100; - max-width: 380px; - max-height: calc(100% - 60px); - width: calc(100% - 80px); - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transition: initial; - -moz-transition: initial; - -o-transition: initial; - -ms-transition: initial; - transition: initial; - -webkit-transform-origin: right bottom; - -moz-transform-origin: right bottom; - -o-transform-origin: right bottom; - -ms-transform-origin: right bottom; - transform-origin: right bottom; - } -} -#aside-content #card-toc .toc-percentage { - float: right; - margin-top: -9px; - color: #a9a9a9; - font-style: italic; - font-size: 140%; -} -#aside-content #card-toc .toc-content { - overflow-y: scroll; - overflow-y: overlay; - margin: 0 -24px; - max-height: calc(100vh - 120px); -} -@media screen and (max-width: 900px) { - #aside-content #card-toc .toc-content { - max-height: calc(100vh - 140px); - } -} -#aside-content #card-toc .toc-content > * { - margin: 0 20px !important; -} -#aside-content #card-toc .toc-content > * > .toc-item > .toc-child { - margin-left: 10px; - padding-left: 10px; - border-left: 1px solid var(--dark-grey); -} -#aside-content #card-toc .toc-content:not(.is-expand) .toc-child { - display: none; -} -@media screen and (max-width: 900px) { - #aside-content #card-toc .toc-content:not(.is-expand) .toc-child { - display: block !important; - } -} -#aside-content #card-toc .toc-content:not(.is-expand) .toc-item.active .toc-child { - display: block; -} -#aside-content #card-toc .toc-content ol, -#aside-content #card-toc .toc-content li { - list-style: none; -} -#aside-content #card-toc .toc-content > ol { - padding: 0 !important; -} -#aside-content #card-toc .toc-content ol { - margin: 0; - padding-left: 18px; -} -#aside-content #card-toc .toc-content .toc-link { - display: block; - margin: 4px 0; - padding: 1px 6px; - color: var(--toc-link-color); - -webkit-transition: all 0.2s ease-in-out; - -moz-transition: all 0.2s ease-in-out; - -o-transition: all 0.2s ease-in-out; - -ms-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; -} -#aside-content #card-toc .toc-content .toc-link:hover { - color: #49b1f5; -} -#aside-content #card-toc .toc-content .toc-link.active { - background: #00c4b6; - color: #fff; -} -#aside-content :only-child > .card-widget { - margin-top: 0; -} -#aside-content .card-more-btn { - float: right; - color: inherit; -} -#aside-content .card-more-btn:hover { - -webkit-animation: more-btn-move 1s infinite; - -moz-animation: more-btn-move 1s infinite; - -o-animation: more-btn-move 1s infinite; - -ms-animation: more-btn-move 1s infinite; - animation: more-btn-move 1s infinite; -} -#aside-content .card-announcement .item-headline i { - color: #f00; -} -.avatar-img { - overflow: hidden; - margin: 0 auto; - width: 110px; - height: 110px; - border-radius: 70px; -} -.avatar-img img { - width: 100%; - height: 100%; - -webkit-transition: filter 375ms ease-in 0.2s, -webkit-transform 0.3s; - -moz-transition: filter 375ms ease-in 0.2s, -moz-transform 0.3s; - -o-transition: filter 375ms ease-in 0.2s, -o-transform 0.3s; - -ms-transition: filter 375ms ease-in 0.2s, -ms-transform 0.3s; - transition: filter 375ms ease-in 0.2s, transform 0.3s; - object-fit: cover; -} -.avatar-img img:hover { - -webkit-transform: rotate(360deg); - -moz-transform: rotate(360deg); - -o-transform: rotate(360deg); - -ms-transform: rotate(360deg); - transform: rotate(360deg); -} -.site-data { - display: table; - width: 100%; - table-layout: fixed; -} -.site-data > a { - display: table-cell; -} -.site-data > a div { - -webkit-transition: all 0.3s; - -moz-transition: all 0.3s; - -o-transition: all 0.3s; - -ms-transition: all 0.3s; - transition: all 0.3s; -} -.site-data > a:hover div { - color: #49b1f5 !important; -} -.site-data > a .headline { - color: var(--font-color); -} -.site-data > a .length-num { - margin-top: -0.32em; - color: var(--text-highlight-color); - font-size: 1.4em; -} -@media screen and (min-width: 900px) { - html.hide-aside .layout { - -webkit-box-pack: center; - -moz-box-pack: center; - -o-box-pack: center; - -ms-flex-pack: center; - -webkit-justify-content: center; - justify-content: center; - } - html.hide-aside .layout > .aside-content { - display: none; - } - html.hide-aside .layout > div:first-child { - width: 80%; - } -} -.page .sticky_layout { - display: -webkit-box; - display: -moz-box; - display: -webkit-flex; - display: -ms-flexbox; - display: box; - display: flex; - -webkit-box-orient: vertical; - -moz-box-orient: vertical; - -o-box-orient: vertical; - -webkit-flex-direction: column; - -ms-flex-direction: column; - flex-direction: column; -} -@-moz-keyframes more-btn-move { - 0%, 100% { - -webkit-transform: translateX(0); - -moz-transform: translateX(0); - -o-transform: translateX(0); - -ms-transform: translateX(0); - transform: translateX(0); - } - 50% { - -webkit-transform: translateX(3px); - -moz-transform: translateX(3px); - -o-transform: translateX(3px); - -ms-transform: translateX(3px); - transform: translateX(3px); - } -} -@-webkit-keyframes more-btn-move { - 0%, 100% { - -webkit-transform: translateX(0); - -moz-transform: translateX(0); - -o-transform: translateX(0); - -ms-transform: translateX(0); - transform: translateX(0); - } - 50% { - -webkit-transform: translateX(3px); - -moz-transform: translateX(3px); - -o-transform: translateX(3px); - -ms-transform: translateX(3px); - transform: translateX(3px); - } -} -@-o-keyframes more-btn-move { - 0%, 100% { - -webkit-transform: translateX(0); - -moz-transform: translateX(0); - -o-transform: translateX(0); - -ms-transform: translateX(0); - transform: translateX(0); - } - 50% { - -webkit-transform: translateX(3px); - -moz-transform: translateX(3px); - -o-transform: translateX(3px); - -ms-transform: translateX(3px); - transform: translateX(3px); - } -} -@keyframes more-btn-move { - 0%, 100% { - -webkit-transform: translateX(0); - -moz-transform: translateX(0); - -o-transform: translateX(0); - -ms-transform: translateX(0); - transform: translateX(0); - } - 50% { - -webkit-transform: translateX(3px); - -moz-transform: translateX(3px); - -o-transform: translateX(3px); - -ms-transform: translateX(3px); - transform: translateX(3px); - } -} -@-moz-keyframes toc-open { - 0% { - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } - 100% { - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } -} -@-webkit-keyframes toc-open { - 0% { - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } - 100% { - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } -} -@-o-keyframes toc-open { - 0% { - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } - 100% { - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } -} -@keyframes toc-open { - 0% { - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } - 100% { - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } -} -@-moz-keyframes toc-close { - 0% { - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } - 100% { - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } -} -@-webkit-keyframes toc-close { - 0% { - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } - 100% { - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } -} -@-o-keyframes toc-close { - 0% { - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } - 100% { - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } -} -@keyframes toc-close { - 0% { - -webkit-transform: scale(1); - -moz-transform: scale(1); - -o-transform: scale(1); - -ms-transform: scale(1); - transform: scale(1); - } - 100% { - -webkit-transform: scale(0.7); - -moz-transform: scale(0.7); - -o-transform: scale(0.7); - -ms-transform: scale(0.7); - transform: scale(0.7); - } -} -#post-comment .comment-head { - margin-bottom: 20px; -} -#post-comment .comment-head .comment-headline { - display: inline-block; - vertical-align: middle; - font-weight: 700; - font-size: 1.43em; -} -#post-comment .comment-head #comment-switch { - display: inline-block; - float: right; - margin: 2px auto 0; - padding: 4px 16px; - width: max-content; - border-radius: 8px; - background: #f6f8fa; -} -#post-comment .comment-head #comment-switch .first-comment { - color: #49b1f5; -} -#post-comment .comment-head #comment-switch .second-comment { - color: #ff7242; -} -#post-comment .comment-head #comment-switch .switch-btn { - position: relative; - display: inline-block; - margin: -4px 8px 0; - width: 42px; - height: 22px; - border-radius: 34px; - background-color: #49b1f5; - vertical-align: middle; - cursor: pointer; - -webkit-transition: 0.4s; - -moz-transition: 0.4s; - -o-transition: 0.4s; - -ms-transition: 0.4s; - transition: 0.4s; -} -#post-comment .comment-head #comment-switch .switch-btn:before { - position: absolute; - bottom: 4px; - left: 4px; - width: 14px; - height: 14px; - border-radius: 50%; - background-color: #fff; - content: ''; - -webkit-transition: 0.4s; - -moz-transition: 0.4s; - -o-transition: 0.4s; - -ms-transition: 0.4s; - transition: 0.4s; -} -#post-comment .comment-head #comment-switch .switch-btn.move { - background-color: #ff7242; -} -#post-comment .comment-head #comment-switch .switch-btn.move:before { - -webkit-transform: translateX(20px); - -moz-transform: translateX(20px); - -o-transform: translateX(20px); - -ms-transform: translateX(20px); - transform: translateX(20px); -} -#post-comment .comment-wrap > div:nth-child(2) { - display: none; -} -#footer { - position: relative; - background: #49b1f5; - background-attachment: scroll; - background-position: bottom; - background-size: cover; -} -#footer:before { - position: absolute; - width: 100%; - height: 100%; - background-color: rgba(0,0,0,0.5); - content: ''; -} -#footer-wrap { - position: relative; - padding: 40px 20px; - color: var(--light-grey); - text-align: center; -} -#footer-wrap a { - color: var(--light-grey); -} -#footer-wrap a:hover { - text-decoration: underline; -} -#footer-wrap .footer-separator { - margin: 0 4px; -} -#footer-wrap .icp-icon { - padding: 0 4px; - max-height: 1.4em; - width: auto; - vertical-align: text-bottom; -} -#page-header { - position: relative; - width: 100%; - background-color: #49b1f5; - background-position: center center; - background-size: cover; - background-repeat: no-repeat; - -webkit-transition: all 0.5s; - -moz-transition: all 0.5s; - -o-transition: all 0.5s; - -ms-transition: all 0.5s; - transition: all 0.5s; -} -#page-header:not(.not-top-img):before { - position: absolute; - width: 100%; - height: 100%; - background-color: rgba(0,0,0,0.3); - content: ''; -} -#page-header.full_page { - height: 100vh; - background-attachment: fixed; -} -#page-header.full_page #site-info { - position: absolute; - top: 43%; - padding: 0 10px; - width: 100%; -} -#page-header #site-title, -#page-header #site-subtitle, -#page-header #scroll-down .scroll-down-effects { - text-align: center; - text-shadow: 2px 2px 4px rgba(0,0,0,0.15); - line-height: 1.5; -} -#page-header #site-title { - margin: 0; - color: var(--white); - font-size: 1.85em; -} -@media screen and (min-width: 768px) { - #page-header #site-title { - font-size: 2.85em; - } -} -#page-header #site-subtitle { - color: var(--light-grey); - font-size: 1.15em; -} -@media screen and (min-width: 768px) { - #page-header #site-subtitle { - font-size: 1.72em; - } -} -#page-header #site_social_icons { - display: none; - margin: 0 auto; - width: 300px; - text-align: center; -} -@media screen and (max-width: 768px) { - #page-header #site_social_icons { - display: block; - } -} -#page-header #site_social_icons .social-icon { - margin: 0 10px; - color: var(--light-grey); - text-shadow: 2px 2px 4px rgba(0,0,0,0.15); - font-size: 1.43em; -} -#page-header #scroll-down { - position: absolute; - bottom: 0; - width: 100%; - cursor: pointer; -} -#page-header #scroll-down .scroll-down-effects { - position: relative; - width: 100%; - color: var(--light-grey); - font-size: 30px; -} -#page-header.not-home-page { - height: 400px; -} -@media screen and (max-width: 768px) { - #page-header.not-home-page { - height: 280px; - } -} -#page-header #page-site-info { - position: absolute; - top: 200px; - padding: 0 10px; - width: 100%; -} -@media screen and (max-width: 768px) { - #page-header #page-site-info { - top: 140px; - } -} -#page-header.post-bg { - height: 400px; -} -@media screen and (max-width: 768px) { - #page-header.post-bg { - height: 360px; - } -} -#page-header.post-bg:before { - background-color: rgba(0,0,0,0.5); -} -#page-header #post-info { - position: absolute; - bottom: 100px; - padding: 0 8%; - width: 100%; - text-align: center; -} -@media screen and (max-width: 900px) { - #page-header #post-info { - bottom: 30px; - text-align: left; - } -} -@media screen and (max-width: 768px) { - #page-header #post-info { - bottom: 22px; - padding: 0 22px; - } -} -#page-header.not-top-img { - margin-bottom: 10px; - height: 60px; - background: 0; -} -#page-header.not-top-img #nav { - background: rgba(255,255,255,0.8); - -webkit-box-shadow: 0 5px 6px -5px rgba(133,133,133,0.6); - box-shadow: 0 5px 6px -5px rgba(133,133,133,0.6); -} -#page-header.not-top-img #nav a { - color: var(--font-color); - text-shadow: none; -} -#page-header.nav-fixed #nav { - position: fixed; - top: -60px; - z-index: 91; - background: rgba(255,255,255,0.8); - -webkit-box-shadow: 0 5px 6px -5px rgba(133,133,133,0.6); - box-shadow: 0 5px 6px -5px rgba(133,133,133,0.6); - -webkit-transition: -webkit-transform 0.2s ease-in-out, opacity 0.2s ease-in-out; - -moz-transition: -moz-transform 0.2s ease-in-out, opacity 0.2s ease-in-out; - -o-transition: -o-transform 0.2s ease-in-out, opacity 0.2s ease-in-out; - -ms-transition: -ms-transform 0.2s ease-in-out, opacity 0.2s ease-in-out; - transition: transform 0.2s ease-in-out, opacity 0.2s ease-in-out; -} -#page-header.nav-fixed #nav a, -#page-header.nav-fixed #nav #site-name, -#page-header.nav-fixed #nav #toggle-menu { - color: var(--font-color); - text-shadow: none; -} -#page-header.nav-fixed #nav a:hover, -#page-header.nav-fixed #nav #site-name:hover, -#page-header.nav-fixed #nav #toggle-menu:hover { - color: #49b1f5; -} -#page-header.nav-visible #nav { - -webkit-transition: all 0.5s; - -moz-transition: all 0.5s; - -o-transition: all 0.5s; - -ms-transition: all 0.5s; - transition: all 0.5s; - -webkit-transform: translate3d(0, 100%, 0); - -moz-transform: translate3d(0, 100%, 0); - -o-transform: translate3d(0, 100%, 0); - -ms-transform: translate3d(0, 100%, 0); - transform: translate3d(0, 100%, 0); -} -#page-header.nav-visible + .layout > .aside-content > .sticky_layout { - top: 70px; - -webkit-transition: top 0.5s; - -moz-transition: top 0.5s; - -o-transition: top 0.5s; - -ms-transition: top 0.5s; - transition: top 0.5s; -} -#page h1.page-title { - margin: 8px 0 20px; -} -#post > #post-info { - margin-bottom: 30px; -} -#post > #post-info .post-title { - padding-bottom: 4px; - border-bottom: 1px solid var(--light-grey); - color: var(--text-highlight-color); -} -#post > #post-info .post-title .post-edit-link { - float: right; -} -#post > #post-info #post-meta, -#post > #post-info #post-meta a { - color: #78818a; -} -#post-info .post-title { - margin-bottom: 8px; - color: var(--white); - font-weight: normal; - font-size: 2.5em; - line-height: 1.5; - -webkit-line-clamp: 3; -} -@media screen and (max-width: 768px) { - #post-info .post-title { - font-size: 2.1em; - } -} -#post-info .post-title .post-edit-link { - padding-left: 10px; -} -#post-info #post-meta { - color: var(--light-grey); - font-size: 95%; -} -@media screen and (min-width: 768px) { - #post-info #post-meta > .meta-secondline > span:first-child { - display: none; - } -} -@media screen and (max-width: 768px) { - #post-info #post-meta { - font-size: 90%; - } - #post-info #post-meta > .meta-firstline, - #post-info #post-meta > .meta-secondline { - display: inline; - } -} -#post-info #post-meta .post-meta-separator { - margin: 0 5px; -} -#post-info #post-meta .post-meta-icon { - margin-right: 4px; -} -#post-info #post-meta .post-meta-label { - margin-right: 4px; -} -#post-info #post-meta a { - color: var(--light-grey); - -webkit-transition: all 0.3s ease-out; - -moz-transition: all 0.3s ease-out; - -o-transition: all 0.3s ease-out; - -ms-transition: all 0.3s ease-out; - transition: all 0.3s ease-out; -} -#post-info #post-meta a:hover { - color: #49b1f5; - text-decoration: underline; -} -#nav { - position: absolute; - top: 0; - z-index: 90; - display: -webkit-box; - display: -moz-box; - display: -webkit-flex; - display: -ms-flexbox; - display: box; - display: flex; - -webkit-box-align: center; - -moz-box-align: center; - -o-box-align: center; - -ms-flex-align: center; - -webkit-align-items: center; - align-items: center; - padding: 0 36px; - width: 100%; - height: 60px; - font-size: 1.3em; - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transition: all 0.5s; - -moz-transition: all 0.5s; - -o-transition: all 0.5s; - -ms-transition: all 0.5s; - transition: all 0.5s; -} -@media screen and (max-width: 768px) { - #nav { - padding: 0 16px; - } -} -#nav.show { - opacity: 1; - -ms-filter: none; - filter: none; -} -#nav #blog_name { - -webkit-box-flex: 1; - -moz-box-flex: 1; - -o-box-flex: 1; - box-flex: 1; - -webkit-flex: 1; - -ms-flex: 1; - flex: 1; -} -#nav #toggle-menu { - display: none; - padding: 2px 0 0 6px; - vertical-align: top; -} -#nav #toggle-menu:hover { - color: var(--white); -} -#nav a { - color: var(--light-grey); -} -#nav a:hover { - color: var(--white); -} -#nav #site-name { - text-shadow: 2px 2px 4px rgba(0,0,0,0.15); - font-weight: bold; - cursor: pointer; -} -#nav .menus_items { - display: inline; -} -#nav .menus_items .menus_item { - position: relative; - display: inline-block; - padding: 0 0 0 14px; -} -#nav .menus_items .menus_item:hover .menus_item_child { - display: block; -} -#nav .menus_items .menus_item:hover > a > i:last-child { - -webkit-transform: rotate(180deg); - -moz-transform: rotate(180deg); - -o-transform: rotate(180deg); - -ms-transform: rotate(180deg); - transform: rotate(180deg); -} -#nav .menus_items .menus_item > a > i:last-child { - padding: 4px; - -webkit-transition: -webkit-transform 0.3s; - -moz-transition: -moz-transform 0.3s; - -o-transition: -o-transform 0.3s; - -ms-transition: -ms-transform 0.3s; - transition: transform 0.3s; -} -#nav .menus_items .menus_item .menus_item_child { - position: absolute; - right: 0; - display: none; - margin-top: 8px; - padding: 0; - width: max-content; - border-radius: 5px; - background-color: var(--sidebar-bg); - -webkit-box-shadow: 0 5px 20px -4px rgba(0,0,0,0.5); - box-shadow: 0 5px 20px -4px rgba(0,0,0,0.5); - -webkit-animation: sub_menus 0.3s 0.1s ease both; - -moz-animation: sub_menus 0.3s 0.1s ease both; - -o-animation: sub_menus 0.3s 0.1s ease both; - -ms-animation: sub_menus 0.3s 0.1s ease both; - animation: sub_menus 0.3s 0.1s ease both; -} -#nav .menus_items .menus_item .menus_item_child:before { - position: absolute; - top: -8px; - left: 0; - width: 100%; - height: 20px; - content: ''; -} -#nav .menus_items .menus_item .menus_item_child li { - list-style: none; -} -#nav .menus_items .menus_item .menus_item_child li:hover { - background: var(--text-bg-hover); -} -#nav .menus_items .menus_item .menus_item_child li:first-child { - border-top-left-radius: 5px; - border-top-right-radius: 5px; -} -#nav .menus_items .menus_item .menus_item_child li:last-child { - border-bottom-right-radius: 5px; - border-bottom-left-radius: 5px; -} -#nav .menus_items .menus_item .menus_item_child li a { - display: inline-block; - padding: 8px 16px; - width: 100%; - color: var(--font-color) !important; - text-shadow: none !important; -} -#nav.hide-menu #toggle-menu { - display: inline-block !important; -} -#nav.hide-menu #toggle-menu .site-page { - font-size: inherit; -} -#nav.hide-menu .menus_items { - display: none; -} -#nav.hide-menu #search-button span { - display: none; -} -#nav #search-button { - display: inline; - padding: 0 0 0 14px; -} -#nav .site-page { - position: relative; - padding-bottom: 6px; - text-shadow: 1px 1px 2px rgba(0,0,0,0.3); - font-size: 0.78em; - cursor: pointer; -} -#nav .site-page:not(.child):after { - position: absolute; - bottom: 0; - left: 0; - z-index: -1; - width: 0; - height: 3px; - background-color: #80c8f8; - content: ''; - -webkit-transition: all 0.3s ease-in-out; - -moz-transition: all 0.3s ease-in-out; - -o-transition: all 0.3s ease-in-out; - -ms-transition: all 0.3s ease-in-out; - transition: all 0.3s ease-in-out; -} -#nav .site-page:not(.child):hover:after { - width: 100%; -} -#pagination .pagination { - margin-top: 20px; - text-align: center; -} -#pagination .page-number.current { - background: #00c4b6; - color: var(--white); -} -#pagination .pagination-info { - position: absolute; - top: 50%; - padding: 20px 40px; - width: 100%; - -webkit-transform: translate(0, -50%); - -moz-transform: translate(0, -50%); - -o-transform: translate(0, -50%); - -ms-transform: translate(0, -50%); - transform: translate(0, -50%); -} -#pagination .prev_info, -#pagination .next_info { - color: var(--white); - font-weight: 500; -} -#pagination .next-post .pagination-info { - text-align: right; -} -#pagination .pull-full { - width: 100% !important; -} -#pagination .prev-post .label, -#pagination .next-post .label { - color: var(--light-grey); - text-transform: uppercase; - font-size: 90%; -} -#pagination .prev-post, -#pagination .next-post { - width: 50%; -} -@media screen and (max-width: 768px) { - #pagination .prev-post, - #pagination .next-post { - width: 100%; - } -} -#pagination .prev-post a, -#pagination .next-post a { - position: relative; - display: block; - overflow: hidden; - height: 150px; -} -#pagination.pagination-post { - overflow: hidden; - margin-top: 40px; - width: 100%; - background: #000; -} -.layout > .recent-posts .pagination > * { - display: inline-block; - margin: 0 6px; - width: 2.5em; - height: 2.5em; - line-height: 2.5em; -} -.layout > .recent-posts .pagination > *:not(.space):hover { - background: var(--btn-hover-color); - color: var(--btn-color); -} -.layout > div:not(.recent-posts) .pagination .page-number { - display: inline-block; - margin: 0 4px; - min-width: 24px; - height: 24px; - text-align: center; - line-height: 24px; - cursor: pointer; -} -#article-container { - word-wrap: break-word; - overflow-wrap: break-word; -} -#article-container a { - color: #49b1f5; -} -#article-container a:hover { - text-decoration: underline; -} -#article-container img { - display: block; - margin: 0 auto 20px; - max-width: 100%; - -webkit-transition: filter 375ms ease-in 0.2s; - -moz-transition: filter 375ms ease-in 0.2s; - -o-transition: filter 375ms ease-in 0.2s; - -ms-transition: filter 375ms ease-in 0.2s; - transition: filter 375ms ease-in 0.2s; -} -#article-container p { - margin: 0 0 16px; -} -#article-container iframe { - margin: 0 0 20px; -} -#article-container kbd { - margin: 0 3px; - padding: 3px 5px; - border: 1px solid #b4b4b4; - border-radius: 3px; - background-color: #f8f8f8; - -webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.25), 0 2px 1px 0 rgba(255,255,255,0.6) inset; - box-shadow: 0 1px 3px rgba(0,0,0,0.25), 0 2px 1px 0 rgba(255,255,255,0.6) inset; - color: #34495e; - white-space: nowrap; - font-weight: 600; - font-size: 0.9em; - font-family: Monaco, 'Ubuntu Mono', monospace; - line-height: 1em; -} -#article-container ol ol, -#article-container ul ol, -#article-container ol ul, -#article-container ul ul { - padding-left: 20px; -} -#article-container ol li, -#article-container ul li { - margin: 4px 0; -} -#article-container ol p, -#article-container ul p { - margin: 0 0 8px; -} -#article-container h1, -#article-container h2, -#article-container h3, -#article-container h4, -#article-container h5, -#article-container h6 { - -webkit-transition: all 0.2s ease-out; - -moz-transition: all 0.2s ease-out; - -o-transition: all 0.2s ease-out; - -ms-transition: all 0.2s ease-out; - transition: all 0.2s ease-out; -} -#article-container h1:before, -#article-container h2:before, -#article-container h3:before, -#article-container h4:before, -#article-container h5:before, -#article-container h6:before { - position: absolute; - top: calc(50% - 7px); - color: #f47466; - content: '\f0c1'; - line-height: 1; - -webkit-transition: all 0.2s ease-out; - -moz-transition: all 0.2s ease-out; - -o-transition: all 0.2s ease-out; - -ms-transition: all 0.2s ease-out; - transition: all 0.2s ease-out; -} -#article-container h1:hover:before, -#article-container h2:hover:before, -#article-container h3:hover:before, -#article-container h4:hover:before, -#article-container h5:hover:before, -#article-container h6:hover:before { - color: #49b1f5; -} -#article-container h1 { - padding-left: 32px; -} -#article-container h1:before { - margin-left: -26px; - font-size: 20px; -} -#article-container h1:hover { - padding-left: 38px; -} -#article-container h2 { - padding-left: 30px; -} -#article-container h2:before { - margin-left: -24px; - font-size: 18px; -} -#article-container h2:hover { - padding-left: 36px; -} -#article-container h3 { - padding-left: 28px; -} -#article-container h3:before { - margin-left: -22px; - font-size: 16px; -} -#article-container h3:hover { - padding-left: 34px; -} -#article-container h4 { - padding-left: 26px; -} -#article-container h4:before { - margin-left: -20px; - font-size: 14px; -} -#article-container h4:hover { - padding-left: 32px; -} -#article-container h5 { - padding-left: 24px; -} -#article-container h5:before { - margin-left: -18px; - font-size: 12px; -} -#article-container h5:hover { - padding-left: 30px; -} -#article-container h6 { - padding-left: 24px; -} -#article-container h6:before { - margin-left: -18px; - font-size: 12px; -} -#article-container h6:hover { - padding-left: 30px; -} -#article-container ol p, -#article-container ul p { - margin: 0 0 8px; -} -#article-container li::marker { - color: #49b1f5; - font-weight: 600; - font-size: 1.05em; -} -#article-container li:hover::marker { - color: var(--pseudo-hover); -} -#article-container ul > li { - list-style-type: circle; -} -#article-container > :last-child { - margin-bottom: 0 !important; -} -#post .tag_share:after { - display: block; - clear: both; - content: ''; -} -#post .tag_share .post-meta__tag-list { - display: inline-block; -} -#post .tag_share .post-meta__tags { - display: inline-block; - margin: 8px 8px 8px 0; - padding: 0 12px; - width: fit-content; - border: 1px solid #49b1f5; - border-radius: 12px; - color: #49b1f5; - font-size: 0.85em; - -webkit-transition: all 0.2s ease-in-out; - -moz-transition: all 0.2s ease-in-out; - -o-transition: all 0.2s ease-in-out; - -ms-transition: all 0.2s ease-in-out; - transition: all 0.2s ease-in-out; -} -#post .tag_share .post-meta__tags:hover { - background: #49b1f5; - color: var(--white); -} -#post .tag_share .post_share { - display: inline-block; - float: right; - margin: 8px 0 0; - width: fit-content; -} -#post .tag_share .post_share .social-share { - font-size: 0.85em; -} -#post .tag_share .post_share .social-share .social-share-icon { - margin: 0 4px; - width: 1.85em; - height: 1.85em; - font-size: 1.2em; - line-height: 1.85em; -} -#post .post-copyright { - position: relative; - margin: 40px 0 10px; - padding: 10px 16px; - border: 1px solid var(--light-grey); - -webkit-transition: box-shadow 0.3s ease-in-out; - -moz-transition: box-shadow 0.3s ease-in-out; - -o-transition: box-shadow 0.3s ease-in-out; - -ms-transition: box-shadow 0.3s ease-in-out; - transition: box-shadow 0.3s ease-in-out; -} -#post .post-copyright:before { - position: absolute; - top: 2px; - right: 12px; - color: #49b1f5; - content: '\f1f9'; - font-size: 1.3em; -} -#post .post-copyright:hover { - -webkit-box-shadow: 0 0 8px 0 rgba(232,237,250,0.6), 0 2px 4px 0 rgba(232,237,250,0.5); - box-shadow: 0 0 8px 0 rgba(232,237,250,0.6), 0 2px 4px 0 rgba(232,237,250,0.5); -} -#post .post-copyright .post-copyright-meta { - color: #49b1f5; - font-weight: bold; -} -#post .post-copyright .post-copyright-info { - padding-left: 6px; -} -#post .post-copyright .post-copyright-info a { - text-decoration: underline; - word-break: break-word; -} -#post .post-copyright .post-copyright-info a:hover { - text-decoration: none; -} -#post .post-outdate-notice { - position: relative; - margin: 0 0 20px; - padding: 0.5em 1.2em; - border-radius: 3px; - background-color: #ffe6e6; - color: #f66; - padding: 0.5em 1em 0.5em 2.6em; - border-left: 5px solid #ff8080; -} -#post .post-outdate-notice:before { - position: absolute; - top: 50%; - left: 0.9em; - color: #ff8080; - content: '\f071'; - -webkit-transform: translateY(-50%); - -moz-transform: translateY(-50%); - -o-transform: translateY(-50%); - -ms-transform: translateY(-50%); - transform: translateY(-50%); -} -#post .ads-wrap { - margin: 40px 0; -} -.relatedPosts { - margin-top: 40px; -} -.relatedPosts > .headline { - margin-bottom: 5px; - font-weight: 700; - font-size: 1.43em; -} -.relatedPosts > .relatedPosts-list > div { - position: relative; - display: inline-block; - overflow: hidden; - margin: 3px; - width: calc(33.333% - 6px); - height: 200px; - background: #000; - vertical-align: bottom; -} -@media screen and (max-width: 768px) { - .relatedPosts > .relatedPosts-list > div { - margin: 2px; - width: calc(50% - 4px); - height: 150px; - } -} -@media screen and (max-width: 600px) { - .relatedPosts > .relatedPosts-list > div { - width: calc(100% - 4px); - } -} -.relatedPosts > .relatedPosts-list .content { - position: absolute; - top: 50%; - padding: 0 20px; - width: 100%; - -webkit-transform: translate(0, -50%); - -moz-transform: translate(0, -50%); - -o-transform: translate(0, -50%); - -ms-transform: translate(0, -50%); - transform: translate(0, -50%); -} -.relatedPosts > .relatedPosts-list .content .date { - color: var(--light-grey); - font-size: 90%; -} -.relatedPosts > .relatedPosts-list .content .title { - color: var(--white); - -webkit-line-clamp: 2; -} -.post-reward { - position: relative; - margin-top: 80px; - width: 100%; - text-align: center; - pointer-events: none; -} -.post-reward > * { - pointer-events: auto; -} -.post-reward .reward-button { - display: inline-block; - padding: 4px 24px; - background: var(--btn-bg); - color: var(--btn-color); - cursor: pointer; -} -.post-reward:hover .reward-button { - background: var(--btn-hover-color); -} -.post-reward:hover > .reward-main { - display: block; -} -.post-reward .reward-main { - position: absolute; - bottom: 40px; - left: 0; - z-index: 100; - display: none; - padding: 0 0 15px; - width: 100%; -} -.post-reward .reward-main .reward-all { - display: inline-block; - margin: 0; - padding: 20px 10px; - border-radius: 4px; - background: var(--reward-pop); -} -.post-reward .reward-main .reward-all:before { - position: absolute; - bottom: -10px; - left: 0; - width: 100%; - height: 20px; - content: ''; -} -.post-reward .reward-main .reward-all:after { - position: absolute; - right: 0; - bottom: 2px; - left: 0; - margin: 0 auto; - width: 0; - height: 0; - border-top: 13px solid var(--reward-pop); - border-right: 13px solid transparent; - border-left: 13px solid transparent; - content: ''; -} -.post-reward .reward-main .reward-all .reward-item { - display: inline-block; - padding: 0 8px; - list-style-type: none; - vertical-align: top; -} -.post-reward .reward-main .reward-all .reward-item img { - width: 130px; - height: 130px; -} -.post-reward .reward-main .reward-all .reward-item .post-qr-code-desc { - width: 130px; - color: #858585; -} -#rightside { - position: fixed; - right: -48px; - bottom: 40px; - z-index: 100; - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transition: all 0.5s; - -moz-transition: all 0.5s; - -o-transition: all 0.5s; - -ms-transition: all 0.5s; - transition: all 0.5s; -} -#rightside #rightside-config-hide { - height: 0; - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transition: -webkit-transform 0.4s; - -moz-transition: -moz-transform 0.4s; - -o-transition: -o-transform 0.4s; - -ms-transition: -ms-transform 0.4s; - transition: transform 0.4s; - -webkit-transform: translate(45px, 0); - -moz-transform: translate(45px, 0); - -o-transform: translate(45px, 0); - -ms-transform: translate(45px, 0); - transform: translate(45px, 0); -} -#rightside #rightside-config-hide.show { - height: auto; - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translate(0, 0); - -moz-transform: translate(0, 0); - -o-transform: translate(0, 0); - -ms-transform: translate(0, 0); - transform: translate(0, 0); -} -#rightside #rightside-config-hide.status { - height: auto; - opacity: 1; - -ms-filter: none; - filter: none; -} -#rightside > div > button, -#rightside > div > a { - display: block; - margin-bottom: 5px; - width: 35px; - height: 35px; - border-radius: 5px; - background-color: var(--btn-bg); - color: var(--btn-color); - text-align: center; - font-size: 16px; - line-height: 35px; -} -#rightside > div > button:hover, -#rightside > div > a:hover { - background-color: var(--btn-hover-color); -} -#rightside #mobile-toc-button { - display: none; -} -@media screen and (max-width: 900px) { - #rightside #mobile-toc-button { - display: block; - } -} -@media screen and (max-width: 900px) { - #rightside #hide-aside-btn { - display: none; - } -} -#sidebar #menu-mask { - position: fixed; - z-index: 102; - display: none; - width: 100%; - height: 100%; - background: rgba(0,0,0,0.8); -} -#sidebar #sidebar-menus { - position: fixed; - top: 0; - right: -300px; - z-index: 103; - overflow-x: hidden; - overflow-y: auto; - width: 300px; - height: 100%; - background: var(--sidebar-bg); - -webkit-transition: all 0.5s; - -moz-transition: all 0.5s; - -o-transition: all 0.5s; - -ms-transition: all 0.5s; - transition: all 0.5s; -} -#sidebar #sidebar-menus.open { - -webkit-transform: translate3d(-100%, 0, 0); - -moz-transform: translate3d(-100%, 0, 0); - -o-transform: translate3d(-100%, 0, 0); - -ms-transform: translate3d(-100%, 0, 0); - transform: translate3d(-100%, 0, 0); -} -#sidebar #sidebar-menus > .avatar-img { - margin: 20px auto; -} -#sidebar #sidebar-menus .sidebar-site-data { - padding: 0 10px; -} -#sidebar #sidebar-menus hr { - margin: 20px auto; -} -#sidebar #sidebar-menus .menus_items { - padding: 0 10px 40px; -} -#sidebar #sidebar-menus .menus_items .site-page { - position: relative; - display: block; - padding: 6px 30px 6px 22px; - color: var(--font-color); - font-size: 1.15em; -} -#sidebar #sidebar-menus .menus_items .site-page:hover { - background: var(--text-bg-hover); -} -#sidebar #sidebar-menus .menus_items .site-page i:first-child { - width: 15%; - text-align: left; -} -#sidebar #sidebar-menus .menus_items .site-page.group > i:last-child { - position: absolute; - top: 0.78em; - right: 18px; - -webkit-transition: -webkit-transform 0.3s; - -moz-transition: -moz-transform 0.3s; - -o-transition: -o-transform 0.3s; - -ms-transition: -ms-transform 0.3s; - transition: transform 0.3s; -} -#sidebar #sidebar-menus .menus_items .site-page.group.hide > i:last-child { - -webkit-transform: rotate(90deg); - -moz-transform: rotate(90deg); - -o-transform: rotate(90deg); - -ms-transform: rotate(90deg); - transform: rotate(90deg); -} -#sidebar #sidebar-menus .menus_items .site-page.group.hide + .menus_item_child { - display: none; -} -#sidebar #sidebar-menus .menus_items .menus_item_child { - margin: 0; - list-style: none; -} -#vcomment { - font-size: 1.1em; -} -#vcomment .vbtn { - border: none; - background: var(--btn-bg); - color: var(--btn-color); -} -#vcomment .vbtn:hover { - background: var(--btn-hover-color); -} -#vcomment .vimg { - -webkit-transition: all 0.3s; - -moz-transition: all 0.3s; - -o-transition: all 0.3s; - -ms-transition: all 0.3s; - transition: all 0.3s; -} -#vcomment .vimg:hover { - -webkit-transform: rotate(360deg); - -moz-transform: rotate(360deg); - -o-transform: rotate(360deg); - -ms-transform: rotate(360deg); - transform: rotate(360deg); -} -#vcomment .vcards .vcard .vcontent.expand:before, -#vcomment .vcards .vcard .vcontent.expand:after { - z-index: 22; -} -#waline-wrap { - --waline-font-size: 1.1em; - --waline-theme-color: #49b1f5; - --waline-active-color: #ff7242; -} -#waline-wrap .wl-comment-actions > button:not(last-child) { - padding-right: 4px; -} -.fireworks { - position: fixed; - top: 0; - left: 0; - z-index: 9999; - pointer-events: none; -} -.medium-zoom-image--opened { - z-index: 99999 !important; - margin: 0 !important; -} -.medium-zoom-overlay { - z-index: 99999 !important; -} -.mermaid-wrap { - margin: 0 0 20px; - text-align: center; -} -.mermaid-wrap > svg { - height: 100%; -} -.utterances, -.fb-comments iframe { - width: 100% !important; -} -#gitalk-container .gt-meta { - margin: 0 0 0.8em; - padding: 6px 0 16px; -} -.katex-wrap { - overflow: auto; -} -.katex-wrap::-webkit-scrollbar { - display: none; -} -.mathjax-overflow { - overflow-x: auto; - overflow-y: hidden; -} -span.mathjax-overflow { - display: inline-block; - padding: 0 2px; - max-width: 100%; - vertical-align: bottom; -} -.aplayer { - color: #4c4948; -} -#article-container .aplayer { - margin: 0 0 20px; -} -#article-container .aplayer ol, -#article-container .aplayer ul { - margin: 0; - padding: 0; -} -#article-container .aplayer ol li, -#article-container .aplayer ul li { - margin: 0; - padding: 0 15px; -} -#article-container .aplayer ol li:before, -#article-container .aplayer ul li:before { - content: none; -} -.snackbar-css { - border-radius: 5px !important; -} -#article-container .btn-center { - margin: 0 0 20px; - text-align: center; -} -#article-container .btn-beautify { - display: inline-block; - margin: 0 4px 6px; - padding: 0 15px; - background-color: var(--btn-beautify-color, #777); - color: #fff; - line-height: 2; -} -#article-container .btn-beautify.blue { - --btn-beautify-color: #428bca; -} -#article-container .btn-beautify.pink { - --btn-beautify-color: #ff69b4; -} -#article-container .btn-beautify.red { - --btn-beautify-color: #f00; -} -#article-container .btn-beautify.purple { - --btn-beautify-color: #6f42c1; -} -#article-container .btn-beautify.orange { - --btn-beautify-color: #ff8c00; -} -#article-container .btn-beautify.green { - --btn-beautify-color: #5cb85c; -} -#article-container .btn-beautify:hover { - background-color: var(--btn-hover-color); -} -#article-container .btn-beautify i + span { - margin-left: 6px; -} -#article-container .btn-beautify:not(.block) + .btn-beautify:not(.block) { - margin: 0 4px 20px; -} -#article-container .btn-beautify.block { - display: block; - margin: 0 0 20px; - width: fit-content; - width: -moz-fit-content; -} -#article-container .btn-beautify.block.center { - margin: 0 auto 20px; -} -#article-container .btn-beautify.block.right { - margin: 0 0 20px auto; -} -#article-container .btn-beautify.larger { - padding: 6px 15px; -} -#article-container .btn-beautify:hover { - text-decoration: none; -} -#article-container .btn-beautify.outline { - border: 1px solid transparent; - border-color: var(--btn-beautify-color, #777); - background-color: transparent; - color: var(--btn-beautify-color, #777); -} -#article-container .btn-beautify.outline:hover { - background-color: var(--btn-beautify-color, #777); -} -#article-container .btn-beautify.outline:hover { - color: #fff !important; -} -#article-container figure.gallery-group { - position: relative; - float: left; - overflow: hidden; - margin: 6px 4px; - width: calc(50% - 8px); - height: 250px; - border-radius: 8px; - background: #000; - -webkit-transform: translate3d(0, 0, 0); -} -@media screen and (max-width: 600px) { - #article-container figure.gallery-group { - width: calc(100% - 8px); - } -} -#article-container figure.gallery-group:hover img { - opacity: 0.4; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; - filter: alpha(opacity=40); - -webkit-transform: translate3d(0, 0, 0); - -moz-transform: translate3d(0, 0, 0); - -o-transform: translate3d(0, 0, 0); - -ms-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); -} -#article-container figure.gallery-group:hover .gallery-group-name::after { - -webkit-transform: translate3d(0, 0, 0); - -moz-transform: translate3d(0, 0, 0); - -o-transform: translate3d(0, 0, 0); - -ms-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); -} -#article-container figure.gallery-group:hover p { - opacity: 1; - -ms-filter: none; - filter: none; - -webkit-transform: translate3d(0, 0, 0); - -moz-transform: translate3d(0, 0, 0); - -o-transform: translate3d(0, 0, 0); - -ms-transform: translate3d(0, 0, 0); - transform: translate3d(0, 0, 0); -} -#article-container figure.gallery-group img { - position: relative; - margin: 0; - max-width: none; - width: calc(100% + 20px); - height: 250px; - -webkit-backface-visibility: hidden; - -moz-backface-visibility: hidden; - -ms-backface-visibility: hidden; - backface-visibility: hidden; - opacity: 0.8; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; - filter: alpha(opacity=80); - -webkit-transition: all 0.3s, filter 375ms ease-in 0.2s; - -moz-transition: all 0.3s, filter 375ms ease-in 0.2s; - -o-transition: all 0.3s, filter 375ms ease-in 0.2s; - -ms-transition: all 0.3s, filter 375ms ease-in 0.2s; - transition: all 0.3s, filter 375ms ease-in 0.2s; - -webkit-transform: translate3d(-10px, 0, 0); - -moz-transform: translate3d(-10px, 0, 0); - -o-transform: translate3d(-10px, 0, 0); - -ms-transform: translate3d(-10px, 0, 0); - transform: translate3d(-10px, 0, 0); - object-fit: cover; -} -#article-container figure.gallery-group figcaption { - position: absolute; - top: 0; - left: 0; - padding: 30px; - width: 100%; - height: 100%; - color: #fff; - text-transform: uppercase; - -webkit-backface-visibility: hidden; - -moz-backface-visibility: hidden; - -ms-backface-visibility: hidden; - backface-visibility: hidden; -} -#article-container figure.gallery-group figcaption > a { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1000; - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); -} -#article-container figure.gallery-group p { - margin: 0; - padding: 8px 0 0; - letter-spacing: 1px; - font-size: 1.1em; - line-height: 1.5; - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); - -webkit-transition: opacity 0.35s, -webkit-transform 0.35s; - -moz-transition: opacity 0.35s, -moz-transform 0.35s; - -o-transition: opacity 0.35s, -o-transform 0.35s; - -ms-transition: opacity 0.35s, -ms-transform 0.35s; - transition: opacity 0.35s, transform 0.35s; - -webkit-transform: translate3d(100%, 0, 0); - -moz-transform: translate3d(100%, 0, 0); - -o-transform: translate3d(100%, 0, 0); - -ms-transform: translate3d(100%, 0, 0); - transform: translate3d(100%, 0, 0); - -webkit-line-clamp: 4; -} -#article-container figure.gallery-group .gallery-group-name { - position: relative; - margin: 0; - padding: 8px 0; - font-weight: bold; - font-size: 1.65em; - line-height: 1.5; - -webkit-line-clamp: 2; -} -#article-container figure.gallery-group .gallery-group-name:after { - position: absolute; - bottom: 0; - left: 0; - width: 100%; - height: 2px; - background: #fff; - content: ''; - -webkit-transition: -webkit-transform 0.35s; - -moz-transition: -moz-transform 0.35s; - -o-transition: -o-transform 0.35s; - -ms-transition: -ms-transform 0.35s; - transition: transform 0.35s; - -webkit-transform: translate3d(-100%, 0, 0); - -moz-transform: translate3d(-100%, 0, 0); - -o-transform: translate3d(-100%, 0, 0); - -ms-transform: translate3d(-100%, 0, 0); - transform: translate3d(-100%, 0, 0); -} -#article-container .gallery-group-main { - overflow: auto; - padding: 0 0 16px; -} -#article-container .fj-gallery { - margin: 0 0 16px; - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); -} -#article-container .fj-gallery .img-alt { - display: none; -} -blockquote.pullquote { - position: relative; - max-width: 45%; - font-size: 110%; -} -blockquote.pullquote.left { - float: left; - margin: 1em 0.5em 0 0; -} -blockquote.pullquote.right { - float: right; - margin: 1em 0 0 0.5em; -} -.video-container { - position: relative; - overflow: hidden; - margin-bottom: 16px; - padding-top: 56.25%; - height: 0; -} -.video-container iframe { - position: absolute; - top: 0; - left: 0; - margin-top: 0; - width: 100%; - height: 100%; -} -.hide-inline > .hide-button, -.hide-block > .hide-button { - display: inline-block; - padding: 5px 18px; - background: #49b1f5; - color: var(--white); -} -.hide-inline > .hide-button:hover, -.hide-block > .hide-button:hover { - background-color: var(--btn-hover-color); -} -.hide-inline > .hide-button.open, -.hide-block > .hide-button.open { - display: none; -} -.hide-inline > .hide-button.open + div, -.hide-block > .hide-button.open + div { - display: block; -} -.hide-inline > .hide-button.open + span, -.hide-block > .hide-button.open + span { - display: inline; -} -.hide-inline > .hide-content, -.hide-block > .hide-content { - display: none; -} -.hide-inline > .hide-button { - margin: 0 6px; -} -.hide-inline > .hide-content { - margin: 0 6px; -} -.hide-block { - margin: 0 0 16px; -} -.toggle { - margin-bottom: 20px; - border: 1px solid #f0f0f0; -} -.toggle > .toggle-button { - padding: 6px 15px; - background: #f0f0f0; - color: #1f2d3d; - cursor: pointer; -} -.toggle > .toggle-content { - margin: 30px 24px; -} -#article-container .inline-img { - display: inline; - margin: 0 3px; - height: 1.1em; - vertical-align: text-bottom; -} -.hl-label { - padding: 2px 4px; - border-radius: 3px; - color: #fff; -} -.hl-label.default { - background-color: #777; -} -.hl-label.blue { - background-color: #428bca; -} -.hl-label.pink { - background-color: #ff69b4; -} -.hl-label.red { - background-color: #f00; -} -.hl-label.purple { - background-color: #6f42c1; -} -.hl-label.orange { - background-color: #ff8c00; -} -.hl-label.green { - background-color: #5cb85c; -} -.note { - position: relative; - margin: 0 0 20px; - padding: 15px; - border-radius: 3px; -} -.note.icon-padding { - padding-left: 3em; -} -.note > .note-icon { - position: absolute; - top: calc(50% - 0.5em); - left: 0.8em; - font-size: larger; -} -.note.blue:not(.disabled) { - border-left-color: #428bca !important; -} -.note.blue:not(.disabled).modern { - border-left-color: transparent !important; - color: #428bca; -} -.note.blue:not(.disabled):not(.simple) { - background: #e3eef7 !important; -} -.note.blue > .note-icon { - color: #428bca; -} -.note.pink:not(.disabled) { - border-left-color: #ff69b4 !important; -} -.note.pink:not(.disabled).modern { - border-left-color: transparent !important; - color: #ff69b4; -} -.note.pink:not(.disabled):not(.simple) { - background: #ffe9f4 !important; -} -.note.pink > .note-icon { - color: #ff69b4; -} -.note.red:not(.disabled) { - border-left-color: #f00 !important; -} -.note.red:not(.disabled).modern { - border-left-color: transparent !important; - color: #f00; -} -.note.red:not(.disabled):not(.simple) { - background: #ffd9d9 !important; -} -.note.red > .note-icon { - color: #f00; -} -.note.purple:not(.disabled) { - border-left-color: #6f42c1 !important; -} -.note.purple:not(.disabled).modern { - border-left-color: transparent !important; - color: #6f42c1; -} -.note.purple:not(.disabled):not(.simple) { - background: #e9e3f6 !important; -} -.note.purple > .note-icon { - color: #6f42c1; -} -.note.orange:not(.disabled) { - border-left-color: #ff8c00 !important; -} -.note.orange:not(.disabled).modern { - border-left-color: transparent !important; - color: #ff8c00; -} -.note.orange:not(.disabled):not(.simple) { - background: #ffeed9 !important; -} -.note.orange > .note-icon { - color: #ff8c00; -} -.note.green:not(.disabled) { - border-left-color: #5cb85c !important; -} -.note.green:not(.disabled).modern { - border-left-color: transparent !important; - color: #5cb85c; -} -.note.green:not(.disabled):not(.simple) { - background: #e7f4e7 !important; -} -.note.green > .note-icon { - color: #5cb85c; -} -.note.simple { - border: 1px solid #eee; - border-left-width: 5px; -} -.note.modern { - border: 1px solid transparent !important; - background-color: #f5f5f5; - color: #4c4948; -} -.note.flat { - border: initial; - border-left: 5px solid #eee; - background-color: #f9f9f9; - color: #4c4948; +/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em 0}figcaption,figure,main{display:block}figure{margin:1em 40px}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent;-webkit-text-decoration-skip:objects}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:inherit}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}dfn{font-style:italic}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}audio,video{display:inline-block}audio:not([controls]){display:none;height:0}img{border-style:none}svg:not(:root){overflow:hidden}button,input,optgroup,select,textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{display:inline-block;vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details,menu{display:block}summary{display:list-item}canvas{display:inline-block}template{display:none}[hidden]{display:none}/*# sourceMappingURL=normalize.min.css.map */ +.clear-fix::after { + content: ''; + width: 0; + height: 0; + display: block; + clear: both; } -.note h2, -.note h3, -.note h4, -.note h5, -.note h6 { - margin-top: 3px; - margin-bottom: 0; - padding-top: 0 !important; - border-bottom: initial; +#content-outer #content-inner, +#header-container { + padding: 1rem; } -.note p:first-child, -.note ul:first-child, -.note ol:first-child, -.note table:first-child, -.note pre:first-child, -.note blockquote:first-child, -.note img:first-child { - margin-top: 0 !important; +#terminal-pl, +#pagination .pagination, +.recent-post-item, +#post, +.one-category-list, +.one-tag-list { + margin: 0 auto; + width: 35rem; + border-radius: 7px; + box-shadow: 0px 3px 20px 0.5px rgba(0,0,0,0.19); } -.note p:last-child, -.note ul:last-child, -.note ol:last-child, -.note table:last-child, -.note pre:last-child, -.note blockquote:last-child, -.note img:last-child { - margin-bottom: 0 !important; +.recent-post-item .article-more, +#post .article-more, +.recent-post-item .article-tag, +#post .article-tag { + display: inline-block; + padding: 5px 8px; + text-decoration: none; + font-size: 12px; + font-family: 'Monaco', sans-serif; + color: #fff; + background-color: #4d4d4d; + -webkit-transition: all all ease-in-out; + -moz-transition: all all ease-in-out; + transition: all all ease-in-out; +} +.recent-post-item .article-more:hover, +#post .article-more:hover, +.recent-post-item .article-tag:hover, +#post .article-tag:hover { + background-color: #000; +} +.recent-post-item ol, +#post ol, +.recent-post-item ul, +#post ul { + margin-top: 0.4rem; + padding: 0 0 0 0.8rem; + list-style: none; } -.note:not(.no-icon) { - padding-left: 3em; +.recent-post-item ol li, +#post ol li, +.recent-post-item ul li, +#post ul li { + position: relative; + margin: 0.2rem 0; + padding: 0.1rem 0.5rem 0.1rem 1.5rem; } -.note:not(.no-icon)::before { +.recent-post-item ol li:before, +#post ol li:before, +.recent-post-item ul li:before, +#post ul li:before { position: absolute; - top: calc(50% - 0.95em); - left: 0.8em; - font-size: larger; -} -.note.default.flat { - background: #f7f7f7; -} -.note.default.modern { - border-color: #e1e1e1; - background: #f3f3f3; - color: #666; -} -.note.default.modern a:not(.btn) { - color: #666; -} -.note.default.modern a:not(.btn):hover { - color: #454545; -} -.note.default:not(.modern) { - border-left-color: #777; -} -.note.default:not(.modern) h2, -.note.default:not(.modern) h3, -.note.default:not(.modern) h4, -.note.default:not(.modern) h5, -.note.default:not(.modern) h6 { - color: #777; -} -.note.default:not(.no-icon)::before { - content: '\f0a9'; -} -.note.default:not(.no-icon):not(.modern)::before { - color: #777; -} -.note.primary.flat { - background: #f5f0fa; -} -.note.primary.modern { - border-color: #e1c2ff; - background: #f3daff; - color: #6f42c1; -} -.note.primary.modern a:not(.btn) { - color: #6f42c1; + left: 0; + top: 0; + margin-right: 4px; + margin-top: 4px; + width: 24px; + height: 24px; + border-radius: 100%; + content: ''; + line-height: 24px; + text-align: center; + color: #fff; + background-color: #574c4c; } -.note.primary.modern a:not(.btn):hover { - color: #453298; +@media screen and (max-width: 768px) { + #terminal-pl, + #pagination .pagination, + .recent-post-item, + #post, + .one-category-list, + .one-tag-list { + width: 100%; + } } -.note.primary:not(.modern) { - border-left-color: #6f42c1; +* { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; } -.note.primary:not(.modern) h2, -.note.primary:not(.modern) h3, -.note.primary:not(.modern) h4, -.note.primary:not(.modern) h5, -.note.primary:not(.modern) h6 { - color: #6f42c1; +*::selection { + background-color: rgba(231,105,105,0.7); + color: #fff; } -.note.primary:not(.no-icon)::before { - content: '\f055'; +html { + height: 100%; + font-size: 20px; + font-family: 'Monaco', sans-serif; + background-color: #f9f9f9; + line-height: 2; } -.note.primary:not(.no-icon):not(.modern)::before { - color: #6f42c1; +body { + font-size: 0.7rem; } -.note.info.flat { - background: #eef7fa; +a { + color: #574c4c; + -webkit-transition: 0.2s all ease-in-out; + -moz-transition: 0.2s all ease-in-out; + transition: 0.2s all ease-in-out; } -.note.info.modern { - border-color: #b3e5ef; - background: #d9edf7; - color: #31708f; +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eee; } -.note.info.modern a:not(.btn) { - color: #31708f; +@media screen and (max-width: 768px) { + html { + font-size: 16px; + } } -.note.info.modern a:not(.btn):hover { - color: #215761; +#content-outer { + margin-bottom: 50px; } -.note.info:not(.modern) { - border-left-color: #428bca; +#footer-inner { + padding-bottom: 3rem; + font-family: sans-serif; + text-align: center; } -.note.info:not(.modern) h2, -.note.info:not(.modern) h3, -.note.info:not(.modern) h4, -.note.info:not(.modern) h5, -.note.info:not(.modern) h6 { - color: #428bca; +#footer-inner .social-icons { + font-size: 1.8rem; + text-align: center; } -.note.info:not(.no-icon)::before { - content: '\f05a'; +#footer-inner .social-icons .social-icon { + margin: 0 0.5rem; } -.note.info:not(.no-icon):not(.modern)::before { - color: #428bca; +#footer-inner .social-icons .social-icon:hover { + color: #000; } -.note.success.flat { - background: #eff8f0; +#footer-inner .copyright { + font-size: 14px; } -.note.success.modern { - border-color: #d0e6be; - background: #dff0d8; - color: #3c763d; +#header-info { + margin-bottom: 10px; } -.note.success.modern a:not(.btn) { - color: #3c763d; +#header-container { + padding-top: 5rem; } -.note.success.modern a:not(.btn):hover { - color: #32562c; +#terminal-pl { + font-family: 'Monaco', sans-serif; } -.note.success:not(.modern) { - border-left-color: #5cb85c; +#top-bar { + position: relative; + font-size: 0.8rem; } -.note.success:not(.modern) h2, -.note.success:not(.modern) h3, -.note.success:not(.modern) h4, -.note.success:not(.modern) h5, -.note.success:not(.modern) h6 { - color: #5cb85c; +#control { + position: absolute; + margin: 0; + padding: 0.4rem; + list-style: none; } -.note.success:not(.no-icon)::before { - content: '\f058'; +#control .btn { + display: inline-block; + margin: 0.1rem; + width: 0.6rem; + height: 0.6rem; + border-radius: 100%; } -.note.success:not(.no-icon):not(.modern)::before { - color: #5cb85c; +#control .btn:nth-child(1) { + background-color: #fc635e; } -.note.warning.flat { - background: #fdf8ea; +#control .btn:nth-child(2) { + background-color: #fec242; } -.note.warning.modern { - border-color: #fae4cd; - background: #fcf4e3; - color: #8a6d3b; +#control .btn:nth-child(3) { + background-color: #35cd4b; } -.note.warning.modern a:not(.btn) { - color: #8a6d3b; +#file-path { + padding: 0.4rem 0; + text-align: center; } -.note.warning.modern a:not(.btn):hover { - color: #714f30; +#file-path .folder-ic { + margin-right: 0.2rem; + color: #6bccf9; } -.note.warning:not(.modern) { - border-left-color: #f0ad4e; +#code-pl { + padding: 1rem 1.5rem; + height: 400px; + border-radius: 5px; + border-top-left-radius: 0; + border-top-right-radius: 0; + color: #fff; + background: #383737; + overflow-y: scroll; } -.note.warning:not(.modern) h2, -.note.warning:not(.modern) h3, -.note.warning:not(.modern) h4, -.note.warning:not(.modern) h5, -.note.warning:not(.modern) h6 { - color: #f0ad4e; +#code-pl .answer, +#code-pl a { + color: #25bf33; } -.note.warning:not(.no-icon)::before { - content: '\f06a'; +#code-pl a { + text-decoration: underline; } -.note.warning:not(.no-icon):not(.modern)::before { - color: #f0ad4e; +#code-pl .code-pl-input { + color: #fc635e; } -.note.danger.flat { - background: #fcf1f2; +#code-pl .category { + display: inline-block; + margin-right: 5px; } -.note.danger.modern { - border-color: #ebcdd2; - background: #f2dfdf; - color: #a94442; +#code-pl .tag { + display: inline-block; + margin-right: 5px; } -.note.danger.modern a:not(.btn) { - color: #a94442; +#code-pl .selfie { + margin: 0 auto; + width: 5rem; + height: 5rem; } -.note.danger.modern a:not(.btn):hover { - color: #84333f; +#code-pl .selfie img { + padding: 4px; + max-width: 100%; } -.note.danger:not(.modern) { - border-left-color: #d9534f; +@media screen and (max-width: 768px) { + #code-pl { + height: 200px; + } } -.note.danger:not(.modern) h2, -.note.danger:not(.modern) h3, -.note.danger:not(.modern) h4, -.note.danger:not(.modern) h5, -.note.danger:not(.modern) h6 { - color: #d9534f; +#nav-bar { + position: absolute; + margin-bottom: 20px; + width: 100%; + font-size: 18px; + font-weight: bold; } -.note.danger:not(.no-icon)::before { - content: '\f056'; +#nav-bar.fixed { + position: fixed; + top: -60px; + left: 0; + background-color: #fff; + box-shadow: 0 5px 6px -5px rgba(133,133,133,0.6); + z-index: 999; + -webkit-transition: 0.2s all ease-in-out; + -moz-transition: 0.2s all ease-in-out; + transition: 0.2s all ease-in-out; } -.note.danger:not(.no-icon):not(.modern)::before { - color: #d9534f; +#nav-bar.visible { + top: 0px; } -#article-container .tabs { - position: relative; - margin: 0 0 20px; - border-right: 1px solid var(--tab-border-color); - border-bottom: 1px solid var(--tab-border-color); - border-left: 1px solid var(--tab-border-color); +#nav-bar #nav-container { + padding: 0 1.5rem; } -#article-container .tabs > .nav-tabs { - display: -webkit-box; - display: -moz-box; - display: -webkit-flex; - display: -ms-flexbox; - display: box; - display: flex; - -webkit-box-lines: multiple; - -moz-box-lines: multiple; - -o-box-lines: multiple; - -webkit-flex-wrap: wrap; - -ms-flex-wrap: wrap; - flex-wrap: wrap; +#nav-bar #nav-container ul { margin: 0; padding: 0; - background: var(--tab-botton-bg); } -#article-container .tabs > .nav-tabs > .tab { - margin: 0; - padding: 0; +#nav-bar #nav-container li { + display: inline-block; list-style: none; } -@media screen and (max-width: 768px) { - #article-container .tabs > .nav-tabs > .tab { - -webkit-box-flex: 1; - -moz-box-flex: 1; - -o-box-flex: 1; - -ms-box-flex: 1; - box-flex: 1; - -webkit-flex-grow: 1; - flex-grow: 1; - } -} -#article-container .tabs > .nav-tabs > .tab button { +#nav-bar #nav-container a { display: block; - padding: 8px 18px; - width: 100%; - border-top: 2px solid var(--tab-border-color); - background: var(--tab-botton-bg); - color: var(--tab-botton-color); - line-height: 2; - -webkit-transition: all 0.4s; - -moz-transition: all 0.4s; - -o-transition: all 0.4s; - -ms-transition: all 0.4s; - transition: all 0.4s; -} -#article-container .tabs > .nav-tabs > .tab button i { - width: 1.5em; -} -#article-container .tabs > .nav-tabs > .tab.active button { - border-top: 2px solid #49b1f5; - background: var(--tab-button-active-bg); - cursor: default; + padding: 10px; + text-decoration: none; } -#article-container .tabs > .nav-tabs > .tab:not(.active) button:hover { - border-top: 2px solid var(--tab-button-hover-bg); - background: var(--tab-button-hover-bg); +#nav-bar #nav-container a:hover { + color: #000; } -#article-container .tabs > .tab-contents .tab-item-content { - position: relative; +#nav-bar #nav-container #toggle-nav { display: none; - padding: 36px 24px; -} -@media screen and (max-width: 768px) { - #article-container .tabs > .tab-contents .tab-item-content { - padding: 24px 14px; - } -} -#article-container .tabs > .tab-contents .tab-item-content.active { - display: block; - -webkit-animation: tabshow 0.5s; - -moz-animation: tabshow 0.5s; - -o-animation: tabshow 0.5s; - -ms-animation: tabshow 0.5s; - animation: tabshow 0.5s; -} -#article-container .tabs .tab-to-top { - position: relative; - display: block; - margin: 0 0 0 auto; - color: #99a9bf; -} -@-moz-keyframes tabshow { - 0% { - -webkit-transform: translateY(15px); - -moz-transform: translateY(15px); - -o-transform: translateY(15px); - -ms-transform: translateY(15px); - transform: translateY(15px); - } - 100% { - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } + padding: 19px; + cursor: pointer; + color: #574c4c; } -@-webkit-keyframes tabshow { - 0% { - -webkit-transform: translateY(15px); - -moz-transform: translateY(15px); - -o-transform: translateY(15px); - -ms-transform: translateY(15px); - transform: translateY(15px); - } - 100% { - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); - } +#nav-bar #nav-container #toggle-nav:hover { + color: #000; } -@-o-keyframes tabshow { - 0% { - -webkit-transform: translateY(15px); - -moz-transform: translateY(15px); - -o-transform: translateY(15px); - -ms-transform: translateY(15px); - transform: translateY(15px); +@media screen and (max-width: 768px) { + #nav-bar #nav-container ul { + padding: 2px 8px; } - 100% { - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); + #nav-bar #nav-container li { + display: block; } -} -@keyframes tabshow { - 0% { - -webkit-transform: translateY(15px); - -moz-transform: translateY(15px); - -o-transform: translateY(15px); - -ms-transform: translateY(15px); - transform: translateY(15px); + #nav-bar #nav-container #toggle-nav { + display: block !important; } - 100% { - -webkit-transform: translateY(0); - -moz-transform: translateY(0); - -o-transform: translateY(0); - -ms-transform: translateY(0); - transform: translateY(0); + #nav-bar #nav-container .in { + visibility: visible !important; + opacity: 1 !important; + -webkit-transform: translateY(0px) !important; + -ms-transform: translateY(0px) !important; + -o-transform: translateY(0px) !important; + transform: translateY(0px) !important; + } + #nav-bar #nav-container #navs { + visibility: hidden; + position: absolute; + top: 3rem; + right: 1rem; + min-width: 170px; + background: #fff; + opacity: 0; + z-index: 999; + box-shadow: 0 5px 10px 2px rgba(0,0,0,0.2); + -webkit-transform: translateY(-20px); + -ms-transform: translateY(-20px); + -o-transform: translateY(-20px); + transform: translateY(-20px); + -webkit-transition: 0.2s all ease-in-out; + -moz-transition: 0.2s all ease-in-out; + transition: 0.2s all ease-in-out; } } -#article-container .timeline { - margin: 0 0 20px 10px; - padding: 14px 20px 5px; - border-left: 2px solid var(--timeline-color, #49b1f5); -} -#article-container .timeline.blue { - --timeline-color: #428bca; - --timeline-bg: rgba(66,139,202, 0.2); +#pagination .pagination { + background-color: #f9f9f9; + border: 0; + box-shadow: none; + text-align: center; } -#article-container .timeline.pink { - --timeline-color: #ff69b4; - --timeline-bg: rgba(255,105,180, 0.2); +#pagination .page-number { + display: inline-block; + margin: 0 0.2rem; + height: 1.2rem; + min-width: 1.2rem; + line-height: 1.2rem; + text-align: center; + cursor: pointer; } -#article-container .timeline.red { - --timeline-color: #f00; - --timeline-bg: rgba(255,0,0, 0.2); +#pagination .page-number:hover { + text-decoration: none; + color: #000; } -#article-container .timeline.purple { - --timeline-color: #6f42c1; - --timeline-bg: rgba(111,66,193, 0.2); +#pagination .page-number.current { + cursor: default; + color: #fff; + background-color: #000; } -#article-container .timeline.orange { - --timeline-color: #ff8c00; - --timeline-bg: rgba(255,140,0, 0.2); +#pagination .page-prev, +#pagination .page-next { + font-size: 14px; } -#article-container .timeline.green { - --timeline-color: #5cb85c; - --timeline-bg: rgba(92,184,92, 0.2); +#pagination .page-prev:hover a, +#pagination .page-next:hover a { + text-decoration: none; + color: #000; } -#article-container .timeline .timeline-item { - margin: 0 0 15px; +#pagination .page-prev i, +#pagination .page-next i { + margin-right: 0.3rem; } -#article-container .timeline .timeline-item:hover .item-circle:before { - border-color: var(--timeline-color, #49b1f5); +#pagination .page-next i { + margin-left: 0.3rem; } -#article-container .timeline .timeline-item.headline .timeline-item-title .item-circle > p { - font-weight: 600; - font-size: 1.2em; +.highlight { + margin: 1rem 0; + border-radius: 4px; + color: #fff; + background-color: #272822; + overflow: auto; } -#article-container .timeline .timeline-item.headline .timeline-item-title .item-circle:before { - left: -28px; - border: 4px solid var(--timeline-color, #49b1f5); +pre { + margin: 0; + padding: 0.4rem; + font-family: consolas, Menlo, "PingFang SC", "Microsoft YaHei", monospace, Helvetica Neue For Number, sans-serif; + font-size: 14px; + line-height: 20px; } -#article-container .timeline .timeline-item.headline:hover .item-circle:before { - border-color: var(--pseudo-hover); +pre .keyword, +pre .selector-id { + color: #89ddff; } -#article-container .timeline .timeline-item .timeline-item-title { - position: relative; +pre .title, +pre .selector-class { + color: #ffcb6b; } -#article-container .timeline .timeline-item .item-circle:before { - position: absolute; - top: 50%; - left: -27px; - width: 6px; - height: 6px; - border: 3px solid var(--pseudo-hover); - border-radius: 50%; - background: var(--card-bg); - content: ''; - -webkit-transition: all 0.3s; - -moz-transition: all 0.3s; - -o-transition: all 0.3s; - -ms-transition: all 0.3s; - transition: all 0.3s; - -webkit-transform: translate(0, -50%); - -moz-transform: translate(0, -50%); - -o-transform: translate(0, -50%); - -ms-transform: translate(0, -50%); - transform: translate(0, -50%); +pre .params { + color: #f78c6c; } -#article-container .timeline .timeline-item .item-circle > p { - margin: 0 0 8px; - font-weight: 500; +pre .number, +pre .string { + color: #c3e88d; } -#article-container .timeline .timeline-item .timeline-item-content { - position: relative; - padding: 12px 15px; - border-radius: 8px; - background: var(--timeline-bg, #e4f3fd); - font-size: 0.93em; +pre .function { + color: #82aaff; } -#article-container .timeline .timeline-item .timeline-item-content > :last-child { - margin-bottom: 0; +pre .comment { + color: #666; } -#article-container .timeline + .timeline { - margin-top: -20px; +.gutter pre { + color: #666; + text-align: right; } -[data-theme='dark'] { - --global-bg: #0d0d0d; - --font-color: rgba(255,255,255,0.7); - --hr-border: rgba(255,255,255,0.4); - --hr-before-color: rgba(255,255,255,0.7); - --search-bg: #121212; - --search-input-color: rgba(255,255,255,0.7); - --search-result-title: rgba(255,255,255,0.9); - --preloader-bg: #0d0d0d; - --preloader-color: rgba(255,255,255,0.7); - --tab-border-color: #2c2c2c; - --tab-botton-bg: #2c2c2c; - --tab-botton-color: rgba(255,255,255,0.7); - --tab-button-hover-bg: #383838; - --tab-button-active-bg: #121212; - --card-bg: #121212; - --sidebar-bg: #121212; - --btn-hover-color: #787878; - --btn-color: rgba(255,255,255,0.7); - --btn-bg: #1f1f1f; - --text-bg-hover: #383838; - --light-grey: rgba(255,255,255,0.7); - --dark-grey: rgba(255,255,255,0.2); - --white: rgba(255,255,255,0.9); - --text-highlight-color: rgba(255,255,255,0.9); - --blockquote-color: rgba(255,255,255,0.7); - --blockquote-bg: #2c2c2c; - --reward-pop: #2c2c2c; - --toc-link-color: rgba(255,255,255,0.6); - --hl-color: rgba(255,255,255,0.7); - --hl-bg: #171717; - --hltools-bg: #1a1a1a; - --hltools-color: #90a4ae; - --hlnumber-bg: #171717; - --hlnumber-color: rgba(255,255,255,0.4); - --hlscrollbar-bg: #1f1f1f; - --hlexpand-bg: linear-gradient(180deg, rgba(23,23,23,0.6), rgba(23,23,23,0.9)); - --scrollbar-color: #1f1f1f; - --timeline-bg: #1f1f1f; +.recent-post-item, +#post { + margin-bottom: 1rem; + padding: 1.5rem 3rem; + font-size: 14px; } -[data-theme='dark'] #web_bg:before, -[data-theme='dark'] #footer:before, -[data-theme='dark'] #page-header:before { - position: absolute; - width: 100%; - height: 100%; - background-color: rgba(0,0,0,0.7); - content: ''; +.recent-post-item h1, +#post h1, +.recent-post-item h2, +#post h2, +.recent-post-item h3, +#post h3, +.recent-post-item h4, +#post h4, +.recent-post-item h5, +#post h5, +.recent-post-item h6, +#post h6 { + margin: 0.5rem 0; + color: #574c4c; + cursor: pointer; } -[data-theme='dark'] #article-container code { - background: #2c2c2c; +.recent-post-item h1::before, +#post h1::before, +.recent-post-item h2::before, +#post h2::before, +.recent-post-item h3::before, +#post h3::before, +.recent-post-item h4::before, +#post h4::before, +.recent-post-item h5::before, +#post h5::before, +.recent-post-item h6::before, +#post h6::before { + margin-right: 0.5rem; + content: "\f02e"; + color: #574c4c; + font: normal normal normal 14px/1 FontAwesome; + -webkit-transition: all all ease-in-out; + -moz-transition: all all ease-in-out; + transition: all all ease-in-out; +} +.recent-post-item h1:hover, +#post h1:hover, +.recent-post-item h2:hover, +#post h2:hover, +.recent-post-item h3:hover, +#post h3:hover, +.recent-post-item h4:hover, +#post h4:hover, +.recent-post-item h5:hover, +#post h5:hover, +.recent-post-item h6:hover, +#post h6:hover { + color: #000; +} +.recent-post-item h1:hover::before, +#post h1:hover::before, +.recent-post-item h2:hover::before, +#post h2:hover::before, +.recent-post-item h3:hover::before, +#post h3:hover::before, +.recent-post-item h4:hover::before, +#post h4:hover::before, +.recent-post-item h5:hover::before, +#post h5:hover::before, +.recent-post-item h6:hover::before, +#post h6:hover::before { + margin-right: 0.6rem; + color: #000; +} +.recent-post-item ul li::before, +#post ul li::before { + top: 5px; + margin-left: 4px; + width: 6px; + height: 6px; + border: 3px solid #574c4c; + background-color: #f9f9f9; } -[data-theme='dark'] #article-container pre > code { - background: #171717; +.recent-post-item ol, +#post ol { + counter-reset: li; } -[data-theme='dark'] #article-container figure.highlight { - -webkit-box-shadow: none; - box-shadow: none; +.recent-post-item ol li::before, +#post ol li::before { + counter-increment: li; + content: counter(li); } -[data-theme='dark'] #article-container .note code { +.recent-post-item blockquote, +#post blockquote { + margin: 0; + padding: 0 0.6rem; + border-left: 0.2rem solid #dfe2e5; + color: #6a737d; +} +.recent-post-item hr, +#post hr { + border: 0; + border-top: 1px solid #eee; +} +.recent-post-item code, +#post code { + padding: 0.1rem 0.2rem; + color: #1f2d3d; + font-family: consolas, Menlo, "PingFang SC", "Microsoft YaHei", monospace, Helvetica Neue For Number, sans-serif; + font-size: 14px; + word-wrap: break-word; background: rgba(27,31,35,0.05); } -[data-theme='dark'] #article-container .aplayer { - filter: brightness(0.8); -} -[data-theme='dark'] #article-container kbd { - border-color: #696969; - background-color: #525252; - color: #e2f1ff; -} -[data-theme='dark'] #page-header.nav-fixed > #nav, -[data-theme='dark'] #page-header.not-top-img > #nav { - background: rgba(18,18,18,0.8); - -webkit-box-shadow: 0 5px 6px -5px rgba(133,133,133,0); - box-shadow: 0 5px 6px -5px rgba(133,133,133,0); -} -[data-theme='dark'] #post-comment #comment-switch { - background: #2c2c2c !important; -} -[data-theme='dark'] #post-comment #comment-switch .switch-btn { - filter: brightness(0.8); -} -[data-theme='dark'] .note { - filter: brightness(0.8); -} -[data-theme='dark'] .hide-button, -[data-theme='dark'] .btn-beautify, -[data-theme='dark'] .hl-label, -[data-theme='dark'] .post-outdate-notice, -[data-theme='dark'] .error-img, -[data-theme='dark'] #article-container iframe, -[data-theme='dark'] .gist, -[data-theme='dark'] .ads-wrap { - filter: brightness(0.8); -} -[data-theme='dark'] img { - filter: brightness(0.8); -} -[data-theme='dark'] #aside-content .aside-list > .aside-list-item:not(:last-child) { - border-bottom: 1px dashed rgba(255,255,255,0.1); -} -[data-theme='dark'] #gitalk-container { - filter: brightness(0.8); -} -[data-theme='dark'] #gitalk-container svg { - fill: rgba(255,255,255,0.9) !important; -} -[data-theme='dark'] #disqusjs #dsqjs:hover, -[data-theme='dark'] #disqusjs #dsqjs:focus, -[data-theme='dark'] #disqusjs #dsqjs .dsqjs-tab-active, -[data-theme='dark'] #disqusjs #dsqjs .dsqjs-no-comment { - color: rgba(255,255,255,0.7); -} -[data-theme='dark'] #disqusjs #dsqjs .dsqjs-order-label { - background-color: #1f1f1f; -} -[data-theme='dark'] #disqusjs #dsqjs .dsqjs-post-body { - color: rgba(255,255,255,0.7); -} -[data-theme='dark'] #disqusjs #dsqjs .dsqjs-post-body code, -[data-theme='dark'] #disqusjs #dsqjs .dsqjs-post-body pre { - background: #2c2c2c; -} -[data-theme='dark'] #disqusjs #dsqjs .dsqjs-post-body blockquote { - color: rgba(255,255,255,0.7); -} -[data-theme='dark'] #artitalk_main #lazy { - background: #121212; -} -[data-theme='dark'] #operare_artitalk .c2 { - background: #121212; -} -@media screen and (max-width: 900px) { - [data-theme='dark'] #card-toc { - background: #1f1f1f; - } +.recent-post-item img, +#post img { + padding: 4px; + max-width: 100%; + border: 1px solid #eaeefb; } -.read-mode { - --font-color: #4c4948; - --readmode-light-color: #fff; - --white: #4c4948; - --light-grey: #4c4948; - --gray: #d6dbdf; - --hr-border: #d6dbdf; - --hr-before-color: #b9c2c9; - --highlight-bg: #f7f7f7; - --exit-btn-bg: #c0c0c0; - --exit-btn-color: #fff; - --exit-btn-hover: #8d8d8d; - --pseudo-hover: none; +.recent-post-item .article-title, +#post .article-title { + display: block; + padding-bottom: 0.3rem; + margin-bottom: 0.5rem; + border-bottom: 1px solid #eee; + font-size: 1.5rem; + text-decoration: none; + color: #2e2e2e; + -webkit-transition: all all ease-in-out; + -moz-transition: all all ease-in-out; + transition: all all ease-in-out; +} +.recent-post-item .article-title:hover, +#post .article-title:hover { + color: #000; + border-bottom: 1px solid #000; +} +.recent-post-item .article-date, +#post .article-date { + color: #999; +} +.recent-post-item .article-inner, +#post .article-inner { + margin: 1rem 0; +} +.recent-post-item .article-footer, +#post .article-footer { + padding: 1rem 0; + border-top: 1px solid #eee; +} +.recent-post-item .article-more, +#post .article-more { + float: right; } -[data-theme='dark'] .read-mode { - --font-color: rgba(255,255,255,0.7); - --readmode-light-color: #0d0d0d; - --white: rgba(255,255,255,0.9); - --light-grey: rgba(255,255,255,0.7); - --gray: rgba(255,255,255,0.7); - --hr-border: rgba(255,255,255,0.5); - --hr-before-color: rgba(255,255,255,0.7); - --highlight-bg: #171717; - --exit-btn-bg: #1f1f1f; - --exit-btn-color: rgba(255,255,255,0.9); - --exit-btn-hover: #525252; +.recent-post-item .article-tag, +#post .article-tag { + position: relative; + margin-left: 1rem; + margin-bottom: 0.3rem; + padding: 0 5px 0 10px; + border-radius: 0 5px 5px 0; + line-height: 18px; } -.read-mode { - background: var(--readmode-light-color); +.recent-post-item .article-tag:hover::before, +#post .article-tag:hover::before { + border-right-color: #000; } -.read-mode .exit-readmode { - position: fixed; - top: 30px; - right: 30px; - z-index: 100; - width: 40px; - height: 40px; - border-radius: 8px; - background: var(--exit-btn-bg); - color: var(--exit-btn-color); - font-size: 16px; - -webkit-transition: background 0.3s; - -moz-transition: background 0.3s; - -o-transition: background 0.3s; - -ms-transition: background 0.3s; - transition: background 0.3s; +.recent-post-item .article-tag::before, +#post .article-tag::before { + content: " "; + position: absolute; + top: 0; + left: -18px; + width: 0; + height: 0; + border: 9px solid transparent; + border-right-color: #4d4d4d; + -webkit-transition: all all ease-in-out; + -moz-transition: all all ease-in-out; + transition: all all ease-in-out; +} +.recent-post-item .article-tag::after, +#post .article-tag::after { + content: " "; + position: absolute; + top: 7px; + left: 2px; + width: 4px; + height: 4px; + border-radius: 100%; + background-color: #fff; } @media screen and (max-width: 768px) { - .read-mode .exit-readmode { - top: initial; - bottom: 30px; + .recent-post-item, + #post { + padding-left: 0.5rem; + padding-right: 0.5rem; + } + .recent-post-item .article-title, + #post .article-title { + font-size: 1.2rem; } } -.read-mode .exit-readmode:hover { - background: var(--exit-btn-hover); -} -.read-mode #aside-content { - display: none; -} -.read-mode #page-header.post-bg { - background-color: transparent; - background-image: none !important; -} -.read-mode #page-header.post-bg:before { - opacity: 0; - -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; - filter: alpha(opacity=0); -} -.read-mode #page-header.post-bg > #post-info { - text-align: center; -} -.read-mode #post { - margin: 0 auto; - background: transparent; - -webkit-box-shadow: none; - box-shadow: none; -} -.read-mode #post:hover { - -webkit-box-shadow: none; - box-shadow: none; -} -.read-mode > canvas { - display: none !important; -} -.read-mode .highlight-tools, -.read-mode #footer, -.read-mode #post > *:not(#post-info):not(.post-content), -.read-mode #nav, -.read-mode .post-outdate-notice, -.read-mode #web_bg, -.read-mode #rightside, -.read-mode .not-top-img { - display: none !important; -} -.read-mode #article-container a { - color: #99a9bf; -} -.read-mode #article-container pre, -.read-mode #article-container .highlight:not(.js-file-line-container) { - background: var(--highlight-bg) !important; -} -.read-mode #article-container pre *, -.read-mode #article-container .highlight:not(.js-file-line-container) * { - color: var(--font-color) !important; -} -.read-mode #article-container figure.highlight { - border-radius: 0 !important; - -webkit-box-shadow: none !important; - box-shadow: none !important; -} -.read-mode #article-container figure.highlight > :not(.highlight-tools) { - display: block !important; -} -.read-mode #article-container figure.highlight .line:before { - color: var(--font-color) !important; -} -.read-mode #article-container figure.highlight .hljs { - background: var(-highlight-bg) !important; -} -.read-mode #article-container h1, -.read-mode #article-container h2, -.read-mode #article-container h3, -.read-mode #article-container h4, -.read-mode #article-container h5, -.read-mode #article-container h6 { - padding: 0; -} -.read-mode #article-container h1:before, -.read-mode #article-container h2:before, -.read-mode #article-container h3:before, -.read-mode #article-container h4:before, -.read-mode #article-container h5:before, -.read-mode #article-container h6:before { - content: ''; -} -.read-mode #article-container h1:hover, -.read-mode #article-container h2:hover, -.read-mode #article-container h3:hover, -.read-mode #article-container h4:hover, -.read-mode #article-container h5:hover, -.read-mode #article-container h6:hover { - padding: 0; -} -.read-mode #article-container ul:hover:before, -.read-mode #article-container li:hover:before, -.read-mode #article-container ol:hover:before { - -webkit-transform: none !important; - -moz-transform: none !important; - -o-transform: none !important; - -ms-transform: none !important; - transform: none !important; -} -.read-mode #article-container ol:before, -.read-mode #article-container li:before { - background: transparent !important; - color: var(--font-color) !important; -} -.read-mode #article-container ul >li:before { - border-color: var(--gray) !important; -} -.read-mode #article-container .tabs { - border: 2px solid var(--tab-border-color); -} -.read-mode #article-container .tabs > .nav-tabs { - background: transparent; -} -.read-mode #article-container .tabs > .nav-tabs > .tab { - border-bottom: 0; -} -.read-mode #article-container .tabs > .nav-tabs > .tab button { - border-top: none !important; - background: transparent; -} -.read-mode #article-container .tabs > .nav-tabs > .tab button:hover { - background: none !important; -} -.read-mode #article-container .tabs > .nav-tabs > .tab.active button { - text-decoration: underline; -} -.read-mode #article-container .tabs > .tab-contents .tab-item-content.active { - -webkit-animation: none; - -moz-animation: none; - -o-animation: none; - -ms-animation: none; - animation: none; +.one-category-list { + margin-bottom: 50px; + border: 0; + box-shadow: 0 0 0 #fff; } -.read-mode #article-container code { - color: var(--font-color); +.one-category-list .category-title { + margin-left: 15px; + font-size: 20px; + color: #5da0c8; } -.read-mode #article-container blockquote { - border-color: var(--gray); - background-color: var(--readmode-light-color); +.one-category-list i { + color: #5da0c8; } -.read-mode #article-container kbd { - border: 1px solid var(--gray); - background-color: transparent; - -webkit-box-shadow: none; - box-shadow: none; - color: var(--font-color); +.one-category-list .post-title { + margin: 1rem 0 1rem 40px; + font-size: 18px; } -.read-mode #article-container .hide-toggle { - border: 1px solid var(--gray) !important; +.one-tag-list { + margin-bottom: 50px; + border: 0; + box-shadow: 0 0 0 #fff; } -.read-mode #article-container .hide-button, -.read-mode #article-container .btn-beautify, -.read-mode #article-container .hl-label { - border: 1px solid var(--gray) !important; - background: var(--readmode-light-color) !important; - color: var(--font-color) !important; +.one-tag-list .tag-title { + margin-left: 15px; + font-size: 20px; + color: #5da0c8; } -.read-mode #article-container .note { - border: 2px solid var(--gray); - border-left-color: var(--gray) !important; - filter: none; - background-color: var(--readmode-light-color) !important; - color: var(--font-color); +.one-tag-list i { + color: #5da0c8; } -.read-mode #article-container .note:before, -.read-mode #article-container .note .note-icon { - color: var(--font-color); +.one-tag-list .post-title { + margin: 1rem 0 1rem 40px; + font-size: 18px; } diff --git a/img/404.jpg b/img/404.jpg deleted file mode 100644 index 4bab3c3..0000000 Binary files a/img/404.jpg and /dev/null differ diff --git a/img/avatar.png b/img/avatar.png deleted file mode 100644 index 53785e6..0000000 Binary files a/img/avatar.png and /dev/null differ diff --git a/img/cover.png b/img/cover.png deleted file mode 100644 index 561bde9..0000000 Binary files a/img/cover.png and /dev/null differ diff --git a/img/favicon.ico b/img/favicon.ico new file mode 100644 index 0000000..a60b5fd Binary files /dev/null and b/img/favicon.ico differ diff --git a/img/favicon.png b/img/favicon.png deleted file mode 100644 index 862ebe8..0000000 Binary files a/img/favicon.png and /dev/null differ diff --git a/img/favicon.svg b/img/favicon.svg deleted file mode 100644 index a881b26..0000000 --- a/img/favicon.svg +++ /dev/null @@ -1,353 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/img/friend_404.gif b/img/friend_404.gif deleted file mode 100644 index 91dd56a..0000000 Binary files a/img/friend_404.gif and /dev/null differ diff --git a/img/top.png b/img/top.png deleted file mode 100644 index fa3e653..0000000 Binary files a/img/top.png and /dev/null differ diff --git a/index.html b/index.html index 93230e4..b70d6a8 100644 --- a/index.html +++ b/index.html @@ -1,223 +1 @@ -Bluecode - - - - - - - -
私人密码库Bitwarden部署
利用GitHub自动化部署Blog
Announcement
还没想好说什么
Recent Post
Info
Article :
2
Run time :
Total Count :
1.4k
UV :
PV :
Last Push :
访客地图
\ No newline at end of file +bluecode
John Doe 10 X 10
Last updated: 2020-12-24
John Doe:~ Desktop$ node home.js

> Blog.purpose
记录生活.

> Blog.author
bluecode

> Blog.more
check here
Learn SwiftUI for iOS 13
北京联通HG260GS-U修改桥接模式

前言

上一家租住的自如也是联通宽带,速率有200M,但是使用的路由器是newWifi,比较卡顿,当时弄了个黑群晖需要外网访问,所以折腾了下,当时忘记记录了,这个周末宅在家把黑苹果给升级到Big Sur了,升级过程中真的意识到了数据备份的重要性,所以又萌生了NAS的想法,主要是在一个测速网站提示签约带宽是300M可以很便宜升级到500M,但是我平常都很难突破100M,感觉是路由器的锅,所以我掏出来成成灰已久的K3,既然都上了K3就折腾下光猫吧,折腾完后网速爽歪歪!!!
-w1029

\ No newline at end of file diff --git a/js/index.js b/js/index.js new file mode 100644 index 0000000..b7d1c5c --- /dev/null +++ b/js/index.js @@ -0,0 +1,34 @@ +/** + * mian + */ + +/** + * click + */ +const HTML = document.documentElement +HTML.addEventListener('click', (e) => { + const TOGGLE_NAV = document.getElementById('toggle-nav') + if (e.target === TOGGLE_NAV) { + __SheepNav__.toggleNav() + } else if (!e.target.classList.contains('site-page')) { + __SheepNav__.hideNav() + } +}, +false) + +/** + * scroll + */ +const NAV = document.getElementById('nav-bar') +window.onscroll = function () { + let currentTop = HTML.scrollTop || document.body.scrollTop + if (__SheepScroll__.isScrollDown(currentTop) && __SheepScroll__.isOverHeaderNav(currentTop)) { + NAV.classList.add('fixed') + NAV.classList.remove('visible') + } else if (!__SheepScroll__.isScrollDown(currentTop) && NAV.classList.contains('fixed')) { + NAV.classList.add('visible') + if (currentTop === 0) { + NAV.classList.remove('fixed') + } + } +} diff --git a/js/main.js b/js/main.js deleted file mode 100644 index 2e29ac8..0000000 --- a/js/main.js +++ /dev/null @@ -1,778 +0,0 @@ -document.addEventListener('DOMContentLoaded', function () { - let blogNameWidth, menusWidth, searchWidth, $nav - let mobileSidebarOpen = false - - const adjustMenu = (init) => { - if (init) { - blogNameWidth = document.getElementById('site-name').offsetWidth - const $menusEle = document.querySelectorAll('#menus .menus_item') - menusWidth = 0 - $menusEle.length && $menusEle.forEach(i => { menusWidth += i.offsetWidth }) - const $searchEle = document.querySelector('#search-button') - searchWidth = $searchEle ? $searchEle.offsetWidth : 0 - $nav = document.getElementById('nav') - } - - let hideMenuIndex = '' - if (window.innerWidth <= 768) hideMenuIndex = true - else hideMenuIndex = blogNameWidth + menusWidth + searchWidth > $nav.offsetWidth - 120 - - if (hideMenuIndex) { - $nav.classList.add('hide-menu') - } else { - $nav.classList.remove('hide-menu') - } - } - - // 初始化header - const initAdjust = () => { - adjustMenu(true) - $nav.classList.add('show') - } - - // sidebar menus - const sidebarFn = { - open: () => { - btf.sidebarPaddingR() - document.body.style.overflow = 'hidden' - btf.animateIn(document.getElementById('menu-mask'), 'to_show 0.5s') - document.getElementById('sidebar-menus').classList.add('open') - mobileSidebarOpen = true - }, - close: () => { - const $body = document.body - $body.style.overflow = '' - $body.style.paddingRight = '' - btf.animateOut(document.getElementById('menu-mask'), 'to_hide 0.5s') - document.getElementById('sidebar-menus').classList.remove('open') - mobileSidebarOpen = false - } - } - - /** - * 首頁top_img底下的箭頭 - */ - const scrollDownInIndex = () => { - const $scrollDownEle = document.getElementById('scroll-down') - $scrollDownEle && $scrollDownEle.addEventListener('click', function () { - btf.scrollToDest(document.getElementById('content-inner').offsetTop, 300) - }) - } - - /** - * 代碼 - * 只適用於Hexo默認的代碼渲染 - */ - const addHighlightTool = function () { - const highLight = GLOBAL_CONFIG.highlight - if (!highLight) return - - const isHighlightCopy = highLight.highlightCopy - const isHighlightLang = highLight.highlightLang - const isHighlightShrink = GLOBAL_CONFIG_SITE.isHighlightShrink - const highlightHeightLimit = highLight.highlightHeightLimit - const isShowTool = isHighlightCopy || isHighlightLang || isHighlightShrink !== undefined - const $figureHighlight = highLight.plugin === 'highlighjs' ? document.querySelectorAll('figure.highlight') : document.querySelectorAll('pre[class*="language-"]') - - if (!((isShowTool || highlightHeightLimit) && $figureHighlight.length)) return - - const isPrismjs = highLight.plugin === 'prismjs' - - let highlightShrinkEle = '' - let highlightCopyEle = '' - const highlightShrinkClass = isHighlightShrink === true ? 'closed' : '' - - if (isHighlightShrink !== undefined) { - highlightShrinkEle = `` - } - - if (isHighlightCopy) { - highlightCopyEle = '
' - } - - const copy = (text, ctx) => { - if (document.queryCommandSupported && document.queryCommandSupported('copy')) { - document.execCommand('copy') - if (GLOBAL_CONFIG.Snackbar !== undefined) { - btf.snackbarShow(GLOBAL_CONFIG.copy.success) - } else { - const prevEle = ctx.previousElementSibling - prevEle.innerText = GLOBAL_CONFIG.copy.success - prevEle.style.opacity = 1 - setTimeout(() => { prevEle.style.opacity = 0 }, 700) - } - } else { - if (GLOBAL_CONFIG.Snackbar !== undefined) { - btf.snackbarShow(GLOBAL_CONFIG.copy.noSupport) - } else { - ctx.previousElementSibling.innerText = GLOBAL_CONFIG.copy.noSupport - } - } - } - - // click events - const highlightCopyFn = (ele) => { - const $buttonParent = ele.parentNode - $buttonParent.classList.add('copy-true') - const selection = window.getSelection() - const range = document.createRange() - if (isPrismjs) range.selectNodeContents($buttonParent.querySelectorAll('pre code')[0]) - else range.selectNodeContents($buttonParent.querySelectorAll('table .code pre')[0]) - selection.removeAllRanges() - selection.addRange(range) - const text = selection.toString() - copy(text, ele.lastChild) - selection.removeAllRanges() - $buttonParent.classList.remove('copy-true') - } - - const highlightShrinkFn = (ele) => { - const $nextEle = [...ele.parentNode.children].slice(1) - ele.firstChild.classList.toggle('closed') - if (btf.isHidden($nextEle[$nextEle.length - 1])) { - $nextEle.forEach(e => { e.style.display = 'block' }) - } else { - $nextEle.forEach(e => { e.style.display = 'none' }) - } - } - - const highlightToolsFn = function (e) { - const $target = e.target.classList - if ($target.contains('expand')) highlightShrinkFn(this) - else if ($target.contains('copy-button')) highlightCopyFn(this) - } - - const expandCode = function () { - this.classList.toggle('expand-done') - } - - function createEle (lang, item, service) { - const fragment = document.createDocumentFragment() - - if (isShowTool) { - const hlTools = document.createElement('div') - hlTools.className = `highlight-tools ${highlightShrinkClass}` - hlTools.innerHTML = highlightShrinkEle + lang + highlightCopyEle - hlTools.addEventListener('click', highlightToolsFn) - fragment.appendChild(hlTools) - } - - if (highlightHeightLimit && item.offsetHeight > highlightHeightLimit + 30) { - const ele = document.createElement('div') - ele.className = 'code-expand-btn' - ele.innerHTML = '' - ele.addEventListener('click', expandCode) - fragment.appendChild(ele) - } - - if (service === 'hl') { - item.insertBefore(fragment, item.firstChild) - } else { - item.parentNode.insertBefore(fragment, item) - } - } - - if (isHighlightLang) { - if (isPrismjs) { - $figureHighlight.forEach(function (item) { - const langName = item.getAttribute('data-language') ? item.getAttribute('data-language') : 'Code' - const highlightLangEle = `
${langName}
` - btf.wrap(item, 'figure', { class: 'highlight' }) - createEle(highlightLangEle, item) - }) - } else { - $figureHighlight.forEach(function (item) { - let langName = item.getAttribute('class').split(' ')[1] - if (langName === 'plain' || langName === undefined) langName = 'Code' - const highlightLangEle = `
${langName}
` - createEle(highlightLangEle, item, 'hl') - }) - } - } else { - if (isPrismjs) { - $figureHighlight.forEach(function (item) { - btf.wrap(item, 'figure', { class: 'highlight' }) - createEle('', item) - }) - } else { - $figureHighlight.forEach(function (item) { - createEle('', item, 'hl') - }) - } - } - } - - /** - * PhotoFigcaption - */ - function addPhotoFigcaption () { - document.querySelectorAll('#article-container img').forEach(function (item) { - const parentEle = item.parentNode - const altValue = item.title || item.alt - if (altValue && !parentEle.parentNode.classList.contains('justified-gallery')) { - const ele = document.createElement('div') - ele.className = 'img-alt is-center' - ele.textContent = altValue - parentEle.insertBefore(ele, item.nextSibling) - } - }) - } - - /** - * Lightbox - */ - const runLightbox = () => { - btf.loadLightbox(document.querySelectorAll('#article-container img:not(.no-lightbox)')) - } - - /** - * justified-gallery 圖庫排版 - */ - const runJustifiedGallery = function (ele) { - ele.forEach(item => { - const $imgList = item.querySelectorAll('img') - - $imgList.forEach(i => { - const dataLazySrc = i.getAttribute('data-lazy-src') - if (dataLazySrc) i.src = dataLazySrc - btf.wrap(i, 'div', { class: 'fj-gallery-item' }) - }) - }) - - if (window.fjGallery) { - setTimeout(() => { btf.initJustifiedGallery(ele) }, 100) - return - } - - const newEle = document.createElement('link') - newEle.rel = 'stylesheet' - newEle.href = GLOBAL_CONFIG.source.justifiedGallery.css - document.body.appendChild(newEle) - getScript(`${GLOBAL_CONFIG.source.justifiedGallery.js}`).then(() => { btf.initJustifiedGallery(ele) }) - } - - /** - * 滾動處理 - */ - const scrollFn = function () { - const $rightside = document.getElementById('rightside') - const innerHeight = window.innerHeight + 56 - - // 當滾動條小于 56 的時候 - if (document.body.scrollHeight <= innerHeight) { - $rightside.style.cssText = 'opacity: 1; transform: translateX(-58px)' - return - } - - // find the scroll direction - function scrollDirection (currentTop) { - const result = currentTop > initTop // true is down & false is up - initTop = currentTop - return result - } - - let initTop = 0 - let isChatShow = true - const $header = document.getElementById('page-header') - const isChatBtnHide = typeof chatBtnHide === 'function' - const isChatBtnShow = typeof chatBtnShow === 'function' - - const scrollTask = btf.throttle(() => { - const currentTop = window.scrollY || document.documentElement.scrollTop - const isDown = scrollDirection(currentTop) - if (currentTop > 56) { - if (isDown) { - if ($header.classList.contains('nav-visible')) $header.classList.remove('nav-visible') - if (isChatBtnShow && isChatShow === true) { - chatBtnHide() - isChatShow = false - } - } else { - if (!$header.classList.contains('nav-visible')) $header.classList.add('nav-visible') - if (isChatBtnHide && isChatShow === false) { - chatBtnShow() - isChatShow = true - } - } - $header.classList.add('nav-fixed') - if (window.getComputedStyle($rightside).getPropertyValue('opacity') === '0') { - $rightside.style.cssText = 'opacity: 0.8; transform: translateX(-58px)' - } - } else { - if (currentTop === 0) { - $header.classList.remove('nav-fixed', 'nav-visible') - } - $rightside.style.cssText = "opacity: ''; transform: ''" - } - - if (document.body.scrollHeight <= innerHeight) { - $rightside.style.cssText = 'opacity: 0.8; transform: translateX(-58px)' - } - }, 200) - - window.scrollCollect = scrollTask - - window.addEventListener('scroll', scrollCollect) - } - - /** - * toc,anchor - */ - const scrollFnToDo = function () { - const isToc = GLOBAL_CONFIG_SITE.isToc - const isAnchor = GLOBAL_CONFIG.isAnchor - const $article = document.getElementById('article-container') - - if (!($article && (isToc || isAnchor))) return - - let $tocLink, $cardToc, scrollPercent, autoScrollToc, isExpand - - if (isToc) { - const $cardTocLayout = document.getElementById('card-toc') - $cardToc = $cardTocLayout.getElementsByClassName('toc-content')[0] - $tocLink = $cardToc.querySelectorAll('.toc-link') - const $tocPercentage = $cardTocLayout.querySelector('.toc-percentage') - isExpand = $cardToc.classList.contains('is-expand') - - scrollPercent = currentTop => { - const docHeight = $article.clientHeight - const winHeight = document.documentElement.clientHeight - const headerHeight = $article.offsetTop - const contentMath = (docHeight > winHeight) ? (docHeight - winHeight) : (document.documentElement.scrollHeight - winHeight) - const scrollPercent = (currentTop - headerHeight) / (contentMath) - const scrollPercentRounded = Math.round(scrollPercent * 100) - const percentage = (scrollPercentRounded > 100) ? 100 : (scrollPercentRounded <= 0) ? 0 : scrollPercentRounded - $tocPercentage.textContent = percentage - } - - window.mobileToc = { - open: () => { - $cardTocLayout.style.cssText = 'animation: toc-open .3s; opacity: 1; right: 55px' - }, - - close: () => { - $cardTocLayout.style.animation = 'toc-close .2s' - setTimeout(() => { - $cardTocLayout.style.cssText = "opacity:''; animation: ''; right: ''" - }, 100) - } - } - - // toc元素點擊 - $cardToc.addEventListener('click', e => { - e.preventDefault() - const target = e.target.classList - if (target.contains('toc-content')) return - const $target = target.contains('toc-link') - ? e.target - : e.target.parentElement - btf.scrollToDest(btf.getEleTop(document.getElementById(decodeURI($target.getAttribute('href')).replace('#', ''))), 300) - if (window.innerWidth < 900) { - window.mobileToc.close() - } - }) - - autoScrollToc = item => { - const activePosition = item.getBoundingClientRect().top - const sidebarScrollTop = $cardToc.scrollTop - if (activePosition > (document.documentElement.clientHeight - 100)) { - $cardToc.scrollTop = sidebarScrollTop + 150 - } - if (activePosition < 100) { - $cardToc.scrollTop = sidebarScrollTop - 150 - } - } - } - - // find head position & add active class - const list = $article.querySelectorAll('h1,h2,h3,h4,h5,h6') - let detectItem = '' - const findHeadPosition = function (top) { - if (top === 0) { - return false - } - - let currentId = '' - let currentIndex = '' - - list.forEach(function (ele, index) { - if (top > btf.getEleTop(ele) - 80) { - const id = ele.id - currentId = id ? '#' + encodeURI(id) : '' - currentIndex = index - } - }) - - if (detectItem === currentIndex) return - - if (isAnchor) btf.updateAnchor(currentId) - - detectItem = currentIndex - - if (isToc) { - $cardToc.querySelectorAll('.active').forEach(i => { i.classList.remove('active') }) - - if (currentId === '') { - return - } - - const currentActive = $tocLink[currentIndex] - currentActive.classList.add('active') - - setTimeout(() => { - autoScrollToc(currentActive) - }, 0) - - if (isExpand) return - let parent = currentActive.parentNode - - for (; !parent.matches('.toc'); parent = parent.parentNode) { - if (parent.matches('li')) parent.classList.add('active') - } - } - } - - // main of scroll - window.tocScrollFn = function () { - return btf.throttle(function () { - const currentTop = window.scrollY || document.documentElement.scrollTop - isToc && scrollPercent(currentTop) - findHeadPosition(currentTop) - }, 100)() - } - window.addEventListener('scroll', tocScrollFn) - } - - /** - * Rightside - */ - const rightSideFn = { - switchReadMode: () => { // read-mode - const $body = document.body - $body.classList.add('read-mode') - const newEle = document.createElement('button') - newEle.type = 'button' - newEle.className = 'fas fa-sign-out-alt exit-readmode' - $body.appendChild(newEle) - - function clickFn () { - $body.classList.remove('read-mode') - newEle.remove() - newEle.removeEventListener('click', clickFn) - } - - newEle.addEventListener('click', clickFn) - }, - switchDarkMode: () => { // Switch Between Light And Dark Mode - const nowMode = document.documentElement.getAttribute('data-theme') === 'dark' ? 'dark' : 'light' - if (nowMode === 'light') { - activateDarkMode() - saveToLocal.set('theme', 'dark', 2) - GLOBAL_CONFIG.Snackbar !== undefined && btf.snackbarShow(GLOBAL_CONFIG.Snackbar.day_to_night) - } else { - activateLightMode() - saveToLocal.set('theme', 'light', 2) - GLOBAL_CONFIG.Snackbar !== undefined && btf.snackbarShow(GLOBAL_CONFIG.Snackbar.night_to_day) - } - // handle some cases - typeof utterancesTheme === 'function' && utterancesTheme() - typeof changeGiscusTheme === 'function' && changeGiscusTheme() - typeof FB === 'object' && window.loadFBComment && window.loadFBComment() - typeof runMermaid === 'function' && window.runMermaid() - }, - showOrHideBtn: (e) => { // rightside 點擊設置 按鈕 展開 - const rightsideHideClassList = document.getElementById('rightside-config-hide').classList - rightsideHideClassList.toggle('show') - if (e.classList.contains('show')) { - rightsideHideClassList.add('status') - setTimeout(() => { - rightsideHideClassList.remove('status') - }, 300) - } - e.classList.toggle('show') - }, - scrollToTop: () => { // Back to top - btf.scrollToDest(0, 500) - }, - hideAsideBtn: () => { // Hide aside - const $htmlDom = document.documentElement.classList - $htmlDom.contains('hide-aside') - ? saveToLocal.set('aside-status', 'show', 2) - : saveToLocal.set('aside-status', 'hide', 2) - $htmlDom.toggle('hide-aside') - }, - - runMobileToc: () => { - if (window.getComputedStyle(document.getElementById('card-toc')).getPropertyValue('opacity') === '0') window.mobileToc.open() - else window.mobileToc.close() - } - } - - document.getElementById('rightside').addEventListener('click', function (e) { - const $target = e.target.id ? e.target : e.target.parentNode - switch ($target.id) { - case 'go-up': - rightSideFn.scrollToTop() - break - case 'rightside_config': - rightSideFn.showOrHideBtn($target) - break - case 'mobile-toc-button': - rightSideFn.runMobileToc() - break - case 'readmode': - rightSideFn.switchReadMode() - break - case 'darkmode': - rightSideFn.switchDarkMode() - break - case 'hide-aside-btn': - rightSideFn.hideAsideBtn() - break - default: - break - } - }) - - /** - * menu - * 側邊欄sub-menu 展開/收縮 - */ - const clickFnOfSubMenu = () => { - document.querySelectorAll('#sidebar-menus .site-page.group').forEach(function (item) { - item.addEventListener('click', function () { - this.classList.toggle('hide') - }) - }) - } - - /** - * 複製時加上版權信息 - */ - const addCopyright = () => { - const copyright = GLOBAL_CONFIG.copyright - document.body.oncopy = (e) => { - e.preventDefault() - let textFont; const copyFont = window.getSelection(0).toString() - if (copyFont.length > copyright.limitCount) { - textFont = copyFont + '\n' + '\n' + '\n' + - copyright.languages.author + '\n' + - copyright.languages.link + window.location.href + '\n' + - copyright.languages.source + '\n' + - copyright.languages.info - } else { - textFont = copyFont - } - if (e.clipboardData) { - return e.clipboardData.setData('text', textFont) - } else { - return window.clipboardData.setData('text', textFont) - } - } - } - - /** - * 網頁運行時間 - */ - const addRuntime = () => { - const $runtimeCount = document.getElementById('runtimeshow') - if ($runtimeCount) { - const publishDate = $runtimeCount.getAttribute('data-publishDate') - $runtimeCount.innerText = btf.diffDate(publishDate) + ' ' + GLOBAL_CONFIG.runtime - } - } - - /** - * 最後一次更新時間 - */ - const addLastPushDate = () => { - const $lastPushDateItem = document.getElementById('last-push-date') - if ($lastPushDateItem) { - const lastPushDate = $lastPushDateItem.getAttribute('data-lastPushDate') - $lastPushDateItem.innerText = btf.diffDate(lastPushDate, true) - } - } - - /** - * table overflow - */ - const addTableWrap = () => { - const $table = document.querySelectorAll('#article-container :not(.highlight) > table, #article-container > table') - if ($table.length) { - $table.forEach(item => { - btf.wrap(item, 'div', { class: 'table-wrap' }) - }) - } - } - - /** - * tag-hide - */ - const clickFnOfTagHide = function () { - const $hideInline = document.querySelectorAll('#article-container .hide-button') - if ($hideInline.length) { - $hideInline.forEach(function (item) { - item.addEventListener('click', function (e) { - const $this = this - $this.classList.add('open') - const $fjGallery = $this.nextElementSibling.querySelectorAll('.fj-gallery') - $fjGallery.length && btf.initJustifiedGallery($fjGallery) - }) - }) - } - } - - const tabsFn = { - clickFnOfTabs: function () { - document.querySelectorAll('#article-container .tab > button').forEach(function (item) { - item.addEventListener('click', function (e) { - const $this = this - const $tabItem = $this.parentNode - - if (!$tabItem.classList.contains('active')) { - const $tabContent = $tabItem.parentNode.nextElementSibling - const $siblings = btf.siblings($tabItem, '.active')[0] - $siblings && $siblings.classList.remove('active') - $tabItem.classList.add('active') - const tabId = $this.getAttribute('data-href').replace('#', '') - const childList = [...$tabContent.children] - childList.forEach(item => { - if (item.id === tabId) item.classList.add('active') - else item.classList.remove('active') - }) - const $isTabJustifiedGallery = $tabContent.querySelectorAll(`#${tabId} .fj-gallery`) - if ($isTabJustifiedGallery.length > 0) { - btf.initJustifiedGallery($isTabJustifiedGallery) - } - } - }) - }) - }, - backToTop: () => { - document.querySelectorAll('#article-container .tabs .tab-to-top').forEach(function (item) { - item.addEventListener('click', function () { - btf.scrollToDest(btf.getEleTop(btf.getParents(this, '.tabs')), 300) - }) - }) - } - } - - const toggleCardCategory = function () { - const $cardCategory = document.querySelectorAll('#aside-cat-list .card-category-list-item.parent i') - if ($cardCategory.length) { - $cardCategory.forEach(function (item) { - item.addEventListener('click', function (e) { - e.preventDefault() - const $this = this - $this.classList.toggle('expand') - const $parentEle = $this.parentNode.nextElementSibling - if (btf.isHidden($parentEle)) { - $parentEle.style.display = 'block' - } else { - $parentEle.style.display = 'none' - } - }) - }) - } - } - - const switchComments = function () { - let switchDone = false - const $switchBtn = document.querySelector('#comment-switch > .switch-btn') - $switchBtn && $switchBtn.addEventListener('click', function () { - this.classList.toggle('move') - document.querySelectorAll('#post-comment > .comment-wrap > div').forEach(function (item) { - if (btf.isHidden(item)) { - item.style.cssText = 'display: block;animation: tabshow .5s' - } else { - item.style.cssText = "display: none;animation: ''" - } - }) - - if (!switchDone && typeof loadOtherComment === 'function') { - switchDone = true - loadOtherComment() - } - }) - } - - const addPostOutdateNotice = function () { - const data = GLOBAL_CONFIG.noticeOutdate - const diffDay = btf.diffDate(GLOBAL_CONFIG_SITE.postUpdate) - if (diffDay >= data.limitDay) { - const ele = document.createElement('div') - ele.className = 'post-outdate-notice' - ele.textContent = data.messagePrev + ' ' + diffDay + ' ' + data.messageNext - const $targetEle = document.getElementById('article-container') - if (data.position === 'top') { - $targetEle.insertBefore(ele, $targetEle.firstChild) - } else { - $targetEle.appendChild(ele) - } - } - } - - const lazyloadImg = () => { - window.lazyLoadInstance = new LazyLoad({ - elements_selector: 'img', - threshold: 0, - data_src: 'lazy-src' - }) - } - - const relativeDate = function (selector) { - selector.forEach(item => { - const $this = item - const timeVal = $this.getAttribute('datetime') - $this.innerText = btf.diffDate(timeVal, true) - $this.style.display = 'inline' - }) - } - - const unRefreshFn = function () { - window.addEventListener('resize', () => { - adjustMenu(false) - btf.isHidden(document.getElementById('toggle-menu')) && mobileSidebarOpen && sidebarFn.close() - }) - - document.getElementById('menu-mask').addEventListener('click', e => { sidebarFn.close() }) - - clickFnOfSubMenu() - GLOBAL_CONFIG.islazyload && lazyloadImg() - GLOBAL_CONFIG.copyright !== undefined && addCopyright() - } - - window.refreshFn = function () { - initAdjust() - - if (GLOBAL_CONFIG_SITE.isPost) { - GLOBAL_CONFIG.noticeOutdate !== undefined && addPostOutdateNotice() - GLOBAL_CONFIG.relativeDate.post && relativeDate(document.querySelectorAll('#post-meta time')) - } else { - GLOBAL_CONFIG.relativeDate.homepage && relativeDate(document.querySelectorAll('#recent-posts time')) - GLOBAL_CONFIG.runtime && addRuntime() - addLastPushDate() - toggleCardCategory() - } - - scrollFnToDo() - GLOBAL_CONFIG_SITE.isHome && scrollDownInIndex() - addHighlightTool() - GLOBAL_CONFIG.isPhotoFigcaption && addPhotoFigcaption() - scrollFn() - - const $jgEle = document.querySelectorAll('#article-container .fj-gallery') - $jgEle.length && runJustifiedGallery($jgEle) - - runLightbox() - addTableWrap() - clickFnOfTagHide() - tabsFn.clickFnOfTabs() - tabsFn.backToTop() - switchComments() - document.getElementById('toggle-menu').addEventListener('click', () => { sidebarFn.open() }) - } - - refreshFn() - unRefreshFn() -}) diff --git a/js/nav.js b/js/nav.js new file mode 100644 index 0000000..2e959b1 --- /dev/null +++ b/js/nav.js @@ -0,0 +1,27 @@ +const __SheepNav__ = (function NavModule () { + /** + * toggle the nav + * when in the mobile terminal + */ + function toggleNav () { + const NAVS = document.getElementById('navs') + if (NAVS.classList.contains('in')) { + NAVS.classList.remove('in') + } else { + NAVS.classList.add('in') + } + } + + /** + * hide the nav if click any part of the site + */ + function hideNav () { + const NAVS = document.getElementById('navs') + NAVS.classList.remove('in') + } + + return { + hideNav, + toggleNav + } +})() diff --git a/js/scroll.js b/js/scroll.js new file mode 100644 index 0000000..fff1436 --- /dev/null +++ b/js/scroll.js @@ -0,0 +1,30 @@ +const __SheepScroll__ = (function scrollModule () { + /** + * determine whether the user are scroll down or not + * @param {int} + * @return {boolean} + */ + function isScrollDown (currentTop) { + let result = currentTop > initTop + initTop = currentTop + return result + } + + /** + * determine whether the user are scroll over the header-nav + * @param {int} + * @return {boolean} + */ + function isOverHeaderNav (currentTop) { + const NAV = document.getElementById('nav-bar') + let height = NAV.clientHeight + return currentTop > height + } + + let initTop = 0 + + return { + isScrollDown, + isOverHeaderNav + } +})() diff --git a/js/search/algolia.js b/js/search/algolia.js deleted file mode 100644 index f0b9f3a..0000000 --- a/js/search/algolia.js +++ /dev/null @@ -1,163 +0,0 @@ -window.addEventListener('load', () => { - const openSearch = () => { - const bodyStyle = document.body.style - bodyStyle.width = '100%' - bodyStyle.overflow = 'hidden' - btf.animateIn(document.getElementById('search-mask'), 'to_show 0.5s') - btf.animateIn(document.querySelector('#algolia-search .search-dialog'), 'titleScale 0.5s') - setTimeout(() => { document.querySelector('#algolia-search .ais-SearchBox-input').focus() }, 100) - - // shortcut: ESC - document.addEventListener('keydown', function f (event) { - if (event.code === 'Escape') { - closeSearch() - document.removeEventListener('keydown', f) - } - }) - } - - const closeSearch = () => { - const bodyStyle = document.body.style - bodyStyle.width = '' - bodyStyle.overflow = '' - btf.animateOut(document.querySelector('#algolia-search .search-dialog'), 'search_close .5s') - btf.animateOut(document.getElementById('search-mask'), 'to_hide 0.5s') - } - - const searchClickFn = () => { - document.querySelector('#search-button > .search').addEventListener('click', openSearch) - } - - const searchClickFnOnce = () => { - document.getElementById('search-mask').addEventListener('click', closeSearch) - document.querySelector('#algolia-search .search-close-button').addEventListener('click', closeSearch) - } - - const cutContent = content => { - if (content === '') return '' - - const firstOccur = content.indexOf('') - - let start = firstOccur - 30 - let end = firstOccur + 120 - let pre = '' - let post = '' - - if (start <= 0) { - start = 0 - end = 140 - } else { - pre = '...' - } - - if (end > content.length) { - end = content.length - } else { - post = '...' - } - - let matchContent = pre + content.substring(start, end) + post - return matchContent - } - - const algolia = GLOBAL_CONFIG.algolia - const isAlgoliaValid = algolia.appId && algolia.apiKey && algolia.indexName - if (!isAlgoliaValid) { - return console.error('Algolia setting is invalid!') - } - - const search = instantsearch({ - indexName: algolia.indexName, - searchClient: algoliasearch(algolia.appId, algolia.apiKey), - searchFunction(helper) { - helper.state.query && helper.search() - }, - }) - - const configure = instantsearch.widgets.configure({ - hitsPerPage: 5 - }) - - const searchBox = instantsearch.widgets.searchBox({ - container: '#algolia-search-input', - showReset: false, - showSubmit: false, - placeholder: GLOBAL_CONFIG.algolia.languages.input_placeholder, - showLoadingIndicator: true - }) - - const hits = instantsearch.widgets.hits({ - container: '#algolia-hits', - templates: { - item(data) { - const link = data.permalink ? data.permalink : (GLOBAL_CONFIG.root + data.path) - const result = data._highlightResult - const content = result.contentStripTruncate - ? cutContent(result.contentStripTruncate.value) - : result.contentStrip - ? cutContent(result.contentStrip.value) - : result.content - ? cutContent(result.content.value) - : '' - return ` - - ${result.title.value || 'no-title'} - -

${content}

` - }, - empty: function (data) { - return ( - '
' + - GLOBAL_CONFIG.algolia.languages.hits_empty.replace(/\$\{query}/, data.query) + - '
' - ) - } - } - }) - - const stats = instantsearch.widgets.stats({ - container: '#algolia-info > .algolia-stats', - templates: { - text: function (data) { - const stats = GLOBAL_CONFIG.algolia.languages.hits_stats - .replace(/\$\{hits}/, data.nbHits) - .replace(/\$\{time}/, data.processingTimeMS) - return ( - `
${stats}` - ) - } - } - }) - - const powerBy = instantsearch.widgets.poweredBy({ - container: '#algolia-info > .algolia-poweredBy', - }) - - const pagination = instantsearch.widgets.pagination({ - container: '#algolia-pagination', - totalPages: 5, - templates: { - first: '', - last: '', - previous: '', - next: '' - } - }) - - - search.addWidgets([configure,searchBox,hits,stats,powerBy,pagination]) // add the widgets to the instantsearch instance - - search.start() - - searchClickFn() - searchClickFnOnce() - - window.addEventListener('pjax:complete', () => { - getComputedStyle(document.querySelector('#algolia-search .search-dialog')).display === 'block' && closeSearch() - searchClickFn() - }) - - window.pjax && search.on('render', () => { - window.pjax.refresh(document.getElementById('algolia-hits')) - }) -}) diff --git a/js/search/local-search.js b/js/search/local-search.js deleted file mode 100644 index 6c1ca7d..0000000 --- a/js/search/local-search.js +++ /dev/null @@ -1,188 +0,0 @@ -window.addEventListener('load', () => { - let loadFlag = false - let dataObj = [] - const $searchMask = document.getElementById('search-mask') - - const openSearch = () => { - const bodyStyle = document.body.style - bodyStyle.width = '100%' - bodyStyle.overflow = 'hidden' - btf.animateIn($searchMask, 'to_show 0.5s') - btf.animateIn(document.querySelector('#local-search .search-dialog'), 'titleScale 0.5s') - setTimeout(() => { document.querySelector('#local-search-input input').focus() }, 100) - if (!loadFlag) { - search() - loadFlag = true - } - // shortcut: ESC - document.addEventListener('keydown', function f (event) { - if (event.code === 'Escape') { - closeSearch() - document.removeEventListener('keydown', f) - } - }) - } - - const closeSearch = () => { - const bodyStyle = document.body.style - bodyStyle.width = '' - bodyStyle.overflow = '' - btf.animateOut(document.querySelector('#local-search .search-dialog'), 'search_close .5s') - btf.animateOut($searchMask, 'to_hide 0.5s') - } - - const searchClickFn = () => { - document.querySelector('#search-button > .search').addEventListener('click', openSearch) - } - - const searchClickFnOnce = () => { - document.querySelector('#local-search .search-close-button').addEventListener('click', closeSearch) - $searchMask.addEventListener('click', closeSearch) - if (GLOBAL_CONFIG.localSearch.preload) dataObj = fetchData(GLOBAL_CONFIG.localSearch.path) - } - - // check url is json or not - const isJson = url => { - const reg = /\.json$/ - return reg.test(url) - } - - const fetchData = async (path) => { - let data = [] - const response = await fetch(path) - if (isJson(path)) { - data = await response.json() - } else { - const res = await response.text() - const t = await new window.DOMParser().parseFromString(res, 'text/xml') - const a = await t - data = [...a.querySelectorAll('entry')].map(item =>{ - return { - title: item.querySelector('title').textContent, - content: item.querySelector('content') && item.querySelector('content').textContent, - url: item.querySelector('url').textContent - } - }) - } - if (response.ok) { - const $loadDataItem = document.getElementById('loading-database') - $loadDataItem.nextElementSibling.style.display = 'block' - $loadDataItem.remove() - } - return data - } - - const search = () => { - if (!GLOBAL_CONFIG.localSearch.preload) { - dataObj = fetchData(GLOBAL_CONFIG.localSearch.path) - } - - const $input = document.querySelector('#local-search-input input') - const $resultContent = document.getElementById('local-search-results') - const $loadingStatus = document.getElementById('loading-status') - - $input.addEventListener('input', function () { - const keywords = this.value.trim().toLowerCase().split(/[\s]+/) - if (keywords[0] !== '') $loadingStatus.innerHTML = '' - - $resultContent.innerHTML = '' - let str = '
' - if (keywords.length <= 0) return - let count = 0 - // perform local searching - dataObj.then(data => { - data.forEach(data => { - let isMatch = true - let dataTitle = data.title ? data.title.trim().toLowerCase() : '' - const dataContent = data.content ? data.content.trim().replace(/<[^>]+>/g, '').toLowerCase() : '' - const dataUrl = data.url.startsWith('/') ? data.url : GLOBAL_CONFIG.root + data.url - let indexTitle = -1 - let indexContent = -1 - let firstOccur = -1 - // only match articles with not empty titles and contents - if (dataTitle !== '' || dataContent !== '') { - keywords.forEach((keyword, i) => { - indexTitle = dataTitle.indexOf(keyword) - indexContent = dataContent.indexOf(keyword) - if (indexTitle < 0 && indexContent < 0) { - isMatch = false - } else { - if (indexContent < 0) { - indexContent = 0 - } - if (i === 0) { - firstOccur = indexContent - } - } - }) - } else { - isMatch = false - } - - // show search results - if (isMatch) { - if (firstOccur >= 0) { - // cut out 130 characters - // let start = firstOccur - 30 < 0 ? 0 : firstOccur - 30 - // let end = firstOccur + 50 > dataContent.length ? dataContent.length : firstOccur + 50 - let start = firstOccur - 30 - let end = firstOccur + 100 - let pre = '' - let post = '' - - if (start < 0) { - start = 0 - } - - if (start === 0) { - end = 100 - } else { - pre = '...' - } - - if (end > dataContent.length) { - end = dataContent.length - } else { - post = '...' - } - - let matchContent = dataContent.substring(start, end) - - // highlight all keywords - keywords.forEach(keyword => { - const regS = new RegExp(keyword, 'gi') - matchContent = matchContent.replace(regS, '' + keyword + '') - dataTitle = dataTitle.replace(regS, '' + keyword + '') - }) - - str += '
' + dataTitle + '' - count += 1 - - if (dataContent !== '') { - str += '

' + pre + matchContent + post + '

' - } - } - str += '
' - } - }) - if (count === 0) { - str += '
' + GLOBAL_CONFIG.localSearch.languages.hits_empty.replace(/\$\{query}/, this.value.trim()) + - '
' - } - str += '
' - $resultContent.innerHTML = str - if (keywords[0] !== '') $loadingStatus.innerHTML = '' - window.pjax && window.pjax.refresh($resultContent) - }) - }) - } - - searchClickFn() - searchClickFnOnce() - - // pjax - window.addEventListener('pjax:complete', () => { - !btf.isHidden($searchMask) && closeSearch() - searchClickFn() - }) -}) diff --git a/js/third-party/jquery.min.js b/js/third-party/jquery.min.js new file mode 100644 index 0000000..644d35e --- /dev/null +++ b/js/third-party/jquery.min.js @@ -0,0 +1,4 @@ +/*! jQuery v3.2.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(a,b){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){"use strict";var c=[],d=a.document,e=Object.getPrototypeOf,f=c.slice,g=c.concat,h=c.push,i=c.indexOf,j={},k=j.toString,l=j.hasOwnProperty,m=l.toString,n=m.call(Object),o={};function p(a,b){b=b||d;var c=b.createElement("script");c.text=a,b.head.appendChild(c).parentNode.removeChild(c)}var q="3.2.1",r=function(a,b){return new r.fn.init(a,b)},s=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,t=/^-ms-/,u=/-([a-z])/g,v=function(a,b){return b.toUpperCase()};r.fn=r.prototype={jquery:q,constructor:r,length:0,toArray:function(){return f.call(this)},get:function(a){return null==a?f.call(this):a<0?this[a+this.length]:this[a]},pushStack:function(a){var b=r.merge(this.constructor(),a);return b.prevObject=this,b},each:function(a){return r.each(this,a)},map:function(a){return this.pushStack(r.map(this,function(b,c){return a.call(b,c,b)}))},slice:function(){return this.pushStack(f.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(a){var b=this.length,c=+a+(a<0?b:0);return this.pushStack(c>=0&&c0&&b-1 in a)}var x=function(a){var b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u="sizzle"+1*new Date,v=a.document,w=0,x=0,y=ha(),z=ha(),A=ha(),B=function(a,b){return a===b&&(l=!0),0},C={}.hasOwnProperty,D=[],E=D.pop,F=D.push,G=D.push,H=D.slice,I=function(a,b){for(var c=0,d=a.length;c+~]|"+K+")"+K+"*"),S=new RegExp("="+K+"*([^\\]'\"]*?)"+K+"*\\]","g"),T=new RegExp(N),U=new RegExp("^"+L+"$"),V={ID:new RegExp("^#("+L+")"),CLASS:new RegExp("^\\.("+L+")"),TAG:new RegExp("^("+L+"|[*])"),ATTR:new RegExp("^"+M),PSEUDO:new RegExp("^"+N),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+K+"*(even|odd|(([+-]|)(\\d*)n|)"+K+"*(?:([+-]|)"+K+"*(\\d+)|))"+K+"*\\)|)","i"),bool:new RegExp("^(?:"+J+")$","i"),needsContext:new RegExp("^"+K+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+K+"*((?:-\\d)?\\d*)"+K+"*\\)|)(?=[^-]|$)","i")},W=/^(?:input|select|textarea|button)$/i,X=/^h\d$/i,Y=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,$=/[+~]/,_=new RegExp("\\\\([\\da-f]{1,6}"+K+"?|("+K+")|.)","ig"),aa=function(a,b,c){var d="0x"+b-65536;return d!==d||c?b:d<0?String.fromCharCode(d+65536):String.fromCharCode(d>>10|55296,1023&d|56320)},ba=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ca=function(a,b){return b?"\0"===a?"\ufffd":a.slice(0,-1)+"\\"+a.charCodeAt(a.length-1).toString(16)+" ":"\\"+a},da=function(){m()},ea=ta(function(a){return a.disabled===!0&&("form"in a||"label"in a)},{dir:"parentNode",next:"legend"});try{G.apply(D=H.call(v.childNodes),v.childNodes),D[v.childNodes.length].nodeType}catch(fa){G={apply:D.length?function(a,b){F.apply(a,H.call(b))}:function(a,b){var c=a.length,d=0;while(a[c++]=b[d++]);a.length=c-1}}}function ga(a,b,d,e){var f,h,j,k,l,o,r,s=b&&b.ownerDocument,w=b?b.nodeType:9;if(d=d||[],"string"!=typeof a||!a||1!==w&&9!==w&&11!==w)return d;if(!e&&((b?b.ownerDocument||b:v)!==n&&m(b),b=b||n,p)){if(11!==w&&(l=Z.exec(a)))if(f=l[1]){if(9===w){if(!(j=b.getElementById(f)))return d;if(j.id===f)return d.push(j),d}else if(s&&(j=s.getElementById(f))&&t(b,j)&&j.id===f)return d.push(j),d}else{if(l[2])return G.apply(d,b.getElementsByTagName(a)),d;if((f=l[3])&&c.getElementsByClassName&&b.getElementsByClassName)return G.apply(d,b.getElementsByClassName(f)),d}if(c.qsa&&!A[a+" "]&&(!q||!q.test(a))){if(1!==w)s=b,r=a;else if("object"!==b.nodeName.toLowerCase()){(k=b.getAttribute("id"))?k=k.replace(ba,ca):b.setAttribute("id",k=u),o=g(a),h=o.length;while(h--)o[h]="#"+k+" "+sa(o[h]);r=o.join(","),s=$.test(a)&&qa(b.parentNode)||b}if(r)try{return G.apply(d,s.querySelectorAll(r)),d}catch(x){}finally{k===u&&b.removeAttribute("id")}}}return i(a.replace(P,"$1"),b,d,e)}function ha(){var a=[];function b(c,e){return a.push(c+" ")>d.cacheLength&&delete b[a.shift()],b[c+" "]=e}return b}function ia(a){return a[u]=!0,a}function ja(a){var b=n.createElement("fieldset");try{return!!a(b)}catch(c){return!1}finally{b.parentNode&&b.parentNode.removeChild(b),b=null}}function ka(a,b){var c=a.split("|"),e=c.length;while(e--)d.attrHandle[c[e]]=b}function la(a,b){var c=b&&a,d=c&&1===a.nodeType&&1===b.nodeType&&a.sourceIndex-b.sourceIndex;if(d)return d;if(c)while(c=c.nextSibling)if(c===b)return-1;return a?1:-1}function ma(a){return function(b){var c=b.nodeName.toLowerCase();return"input"===c&&b.type===a}}function na(a){return function(b){var c=b.nodeName.toLowerCase();return("input"===c||"button"===c)&&b.type===a}}function oa(a){return function(b){return"form"in b?b.parentNode&&b.disabled===!1?"label"in b?"label"in b.parentNode?b.parentNode.disabled===a:b.disabled===a:b.isDisabled===a||b.isDisabled!==!a&&ea(b)===a:b.disabled===a:"label"in b&&b.disabled===a}}function pa(a){return ia(function(b){return b=+b,ia(function(c,d){var e,f=a([],c.length,b),g=f.length;while(g--)c[e=f[g]]&&(c[e]=!(d[e]=c[e]))})})}function qa(a){return a&&"undefined"!=typeof a.getElementsByTagName&&a}c=ga.support={},f=ga.isXML=function(a){var b=a&&(a.ownerDocument||a).documentElement;return!!b&&"HTML"!==b.nodeName},m=ga.setDocument=function(a){var b,e,g=a?a.ownerDocument||a:v;return g!==n&&9===g.nodeType&&g.documentElement?(n=g,o=n.documentElement,p=!f(n),v!==n&&(e=n.defaultView)&&e.top!==e&&(e.addEventListener?e.addEventListener("unload",da,!1):e.attachEvent&&e.attachEvent("onunload",da)),c.attributes=ja(function(a){return a.className="i",!a.getAttribute("className")}),c.getElementsByTagName=ja(function(a){return a.appendChild(n.createComment("")),!a.getElementsByTagName("*").length}),c.getElementsByClassName=Y.test(n.getElementsByClassName),c.getById=ja(function(a){return o.appendChild(a).id=u,!n.getElementsByName||!n.getElementsByName(u).length}),c.getById?(d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){return a.getAttribute("id")===b}},d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c=b.getElementById(a);return c?[c]:[]}}):(d.filter.ID=function(a){var b=a.replace(_,aa);return function(a){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return c&&c.value===b}},d.find.ID=function(a,b){if("undefined"!=typeof b.getElementById&&p){var c,d,e,f=b.getElementById(a);if(f){if(c=f.getAttributeNode("id"),c&&c.value===a)return[f];e=b.getElementsByName(a),d=0;while(f=e[d++])if(c=f.getAttributeNode("id"),c&&c.value===a)return[f]}return[]}}),d.find.TAG=c.getElementsByTagName?function(a,b){return"undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName(a):c.qsa?b.querySelectorAll(a):void 0}:function(a,b){var c,d=[],e=0,f=b.getElementsByTagName(a);if("*"===a){while(c=f[e++])1===c.nodeType&&d.push(c);return d}return f},d.find.CLASS=c.getElementsByClassName&&function(a,b){if("undefined"!=typeof b.getElementsByClassName&&p)return b.getElementsByClassName(a)},r=[],q=[],(c.qsa=Y.test(n.querySelectorAll))&&(ja(function(a){o.appendChild(a).innerHTML="",a.querySelectorAll("[msallowcapture^='']").length&&q.push("[*^$]="+K+"*(?:''|\"\")"),a.querySelectorAll("[selected]").length||q.push("\\["+K+"*(?:value|"+J+")"),a.querySelectorAll("[id~="+u+"-]").length||q.push("~="),a.querySelectorAll(":checked").length||q.push(":checked"),a.querySelectorAll("a#"+u+"+*").length||q.push(".#.+[+~]")}),ja(function(a){a.innerHTML="";var b=n.createElement("input");b.setAttribute("type","hidden"),a.appendChild(b).setAttribute("name","D"),a.querySelectorAll("[name=d]").length&&q.push("name"+K+"*[*^$|!~]?="),2!==a.querySelectorAll(":enabled").length&&q.push(":enabled",":disabled"),o.appendChild(a).disabled=!0,2!==a.querySelectorAll(":disabled").length&&q.push(":enabled",":disabled"),a.querySelectorAll("*,:x"),q.push(",.*:")})),(c.matchesSelector=Y.test(s=o.matches||o.webkitMatchesSelector||o.mozMatchesSelector||o.oMatchesSelector||o.msMatchesSelector))&&ja(function(a){c.disconnectedMatch=s.call(a,"*"),s.call(a,"[s!='']:x"),r.push("!=",N)}),q=q.length&&new RegExp(q.join("|")),r=r.length&&new RegExp(r.join("|")),b=Y.test(o.compareDocumentPosition),t=b||Y.test(o.contains)?function(a,b){var c=9===a.nodeType?a.documentElement:a,d=b&&b.parentNode;return a===d||!(!d||1!==d.nodeType||!(c.contains?c.contains(d):a.compareDocumentPosition&&16&a.compareDocumentPosition(d)))}:function(a,b){if(b)while(b=b.parentNode)if(b===a)return!0;return!1},B=b?function(a,b){if(a===b)return l=!0,0;var d=!a.compareDocumentPosition-!b.compareDocumentPosition;return d?d:(d=(a.ownerDocument||a)===(b.ownerDocument||b)?a.compareDocumentPosition(b):1,1&d||!c.sortDetached&&b.compareDocumentPosition(a)===d?a===n||a.ownerDocument===v&&t(v,a)?-1:b===n||b.ownerDocument===v&&t(v,b)?1:k?I(k,a)-I(k,b):0:4&d?-1:1)}:function(a,b){if(a===b)return l=!0,0;var c,d=0,e=a.parentNode,f=b.parentNode,g=[a],h=[b];if(!e||!f)return a===n?-1:b===n?1:e?-1:f?1:k?I(k,a)-I(k,b):0;if(e===f)return la(a,b);c=a;while(c=c.parentNode)g.unshift(c);c=b;while(c=c.parentNode)h.unshift(c);while(g[d]===h[d])d++;return d?la(g[d],h[d]):g[d]===v?-1:h[d]===v?1:0},n):n},ga.matches=function(a,b){return ga(a,null,null,b)},ga.matchesSelector=function(a,b){if((a.ownerDocument||a)!==n&&m(a),b=b.replace(S,"='$1']"),c.matchesSelector&&p&&!A[b+" "]&&(!r||!r.test(b))&&(!q||!q.test(b)))try{var d=s.call(a,b);if(d||c.disconnectedMatch||a.document&&11!==a.document.nodeType)return d}catch(e){}return ga(b,n,null,[a]).length>0},ga.contains=function(a,b){return(a.ownerDocument||a)!==n&&m(a),t(a,b)},ga.attr=function(a,b){(a.ownerDocument||a)!==n&&m(a);var e=d.attrHandle[b.toLowerCase()],f=e&&C.call(d.attrHandle,b.toLowerCase())?e(a,b,!p):void 0;return void 0!==f?f:c.attributes||!p?a.getAttribute(b):(f=a.getAttributeNode(b))&&f.specified?f.value:null},ga.escape=function(a){return(a+"").replace(ba,ca)},ga.error=function(a){throw new Error("Syntax error, unrecognized expression: "+a)},ga.uniqueSort=function(a){var b,d=[],e=0,f=0;if(l=!c.detectDuplicates,k=!c.sortStable&&a.slice(0),a.sort(B),l){while(b=a[f++])b===a[f]&&(e=d.push(f));while(e--)a.splice(d[e],1)}return k=null,a},e=ga.getText=function(a){var b,c="",d=0,f=a.nodeType;if(f){if(1===f||9===f||11===f){if("string"==typeof a.textContent)return a.textContent;for(a=a.firstChild;a;a=a.nextSibling)c+=e(a)}else if(3===f||4===f)return a.nodeValue}else while(b=a[d++])c+=e(b);return c},d=ga.selectors={cacheLength:50,createPseudo:ia,match:V,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(a){return a[1]=a[1].replace(_,aa),a[3]=(a[3]||a[4]||a[5]||"").replace(_,aa),"~="===a[2]&&(a[3]=" "+a[3]+" "),a.slice(0,4)},CHILD:function(a){return a[1]=a[1].toLowerCase(),"nth"===a[1].slice(0,3)?(a[3]||ga.error(a[0]),a[4]=+(a[4]?a[5]+(a[6]||1):2*("even"===a[3]||"odd"===a[3])),a[5]=+(a[7]+a[8]||"odd"===a[3])):a[3]&&ga.error(a[0]),a},PSEUDO:function(a){var b,c=!a[6]&&a[2];return V.CHILD.test(a[0])?null:(a[3]?a[2]=a[4]||a[5]||"":c&&T.test(c)&&(b=g(c,!0))&&(b=c.indexOf(")",c.length-b)-c.length)&&(a[0]=a[0].slice(0,b),a[2]=c.slice(0,b)),a.slice(0,3))}},filter:{TAG:function(a){var b=a.replace(_,aa).toLowerCase();return"*"===a?function(){return!0}:function(a){return a.nodeName&&a.nodeName.toLowerCase()===b}},CLASS:function(a){var b=y[a+" "];return b||(b=new RegExp("(^|"+K+")"+a+"("+K+"|$)"))&&y(a,function(a){return b.test("string"==typeof a.className&&a.className||"undefined"!=typeof a.getAttribute&&a.getAttribute("class")||"")})},ATTR:function(a,b,c){return function(d){var e=ga.attr(d,a);return null==e?"!="===b:!b||(e+="","="===b?e===c:"!="===b?e!==c:"^="===b?c&&0===e.indexOf(c):"*="===b?c&&e.indexOf(c)>-1:"$="===b?c&&e.slice(-c.length)===c:"~="===b?(" "+e.replace(O," ")+" ").indexOf(c)>-1:"|="===b&&(e===c||e.slice(0,c.length+1)===c+"-"))}},CHILD:function(a,b,c,d,e){var f="nth"!==a.slice(0,3),g="last"!==a.slice(-4),h="of-type"===b;return 1===d&&0===e?function(a){return!!a.parentNode}:function(b,c,i){var j,k,l,m,n,o,p=f!==g?"nextSibling":"previousSibling",q=b.parentNode,r=h&&b.nodeName.toLowerCase(),s=!i&&!h,t=!1;if(q){if(f){while(p){m=b;while(m=m[p])if(h?m.nodeName.toLowerCase()===r:1===m.nodeType)return!1;o=p="only"===a&&!o&&"nextSibling"}return!0}if(o=[g?q.firstChild:q.lastChild],g&&s){m=q,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n&&j[2],m=n&&q.childNodes[n];while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if(1===m.nodeType&&++t&&m===b){k[a]=[w,n,t];break}}else if(s&&(m=b,l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),j=k[a]||[],n=j[0]===w&&j[1],t=n),t===!1)while(m=++n&&m&&m[p]||(t=n=0)||o.pop())if((h?m.nodeName.toLowerCase()===r:1===m.nodeType)&&++t&&(s&&(l=m[u]||(m[u]={}),k=l[m.uniqueID]||(l[m.uniqueID]={}),k[a]=[w,t]),m===b))break;return t-=e,t===d||t%d===0&&t/d>=0}}},PSEUDO:function(a,b){var c,e=d.pseudos[a]||d.setFilters[a.toLowerCase()]||ga.error("unsupported pseudo: "+a);return e[u]?e(b):e.length>1?(c=[a,a,"",b],d.setFilters.hasOwnProperty(a.toLowerCase())?ia(function(a,c){var d,f=e(a,b),g=f.length;while(g--)d=I(a,f[g]),a[d]=!(c[d]=f[g])}):function(a){return e(a,0,c)}):e}},pseudos:{not:ia(function(a){var b=[],c=[],d=h(a.replace(P,"$1"));return d[u]?ia(function(a,b,c,e){var f,g=d(a,null,e,[]),h=a.length;while(h--)(f=g[h])&&(a[h]=!(b[h]=f))}):function(a,e,f){return b[0]=a,d(b,null,f,c),b[0]=null,!c.pop()}}),has:ia(function(a){return function(b){return ga(a,b).length>0}}),contains:ia(function(a){return a=a.replace(_,aa),function(b){return(b.textContent||b.innerText||e(b)).indexOf(a)>-1}}),lang:ia(function(a){return U.test(a||"")||ga.error("unsupported lang: "+a),a=a.replace(_,aa).toLowerCase(),function(b){var c;do if(c=p?b.lang:b.getAttribute("xml:lang")||b.getAttribute("lang"))return c=c.toLowerCase(),c===a||0===c.indexOf(a+"-");while((b=b.parentNode)&&1===b.nodeType);return!1}}),target:function(b){var c=a.location&&a.location.hash;return c&&c.slice(1)===b.id},root:function(a){return a===o},focus:function(a){return a===n.activeElement&&(!n.hasFocus||n.hasFocus())&&!!(a.type||a.href||~a.tabIndex)},enabled:oa(!1),disabled:oa(!0),checked:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&!!a.checked||"option"===b&&!!a.selected},selected:function(a){return a.parentNode&&a.parentNode.selectedIndex,a.selected===!0},empty:function(a){for(a=a.firstChild;a;a=a.nextSibling)if(a.nodeType<6)return!1;return!0},parent:function(a){return!d.pseudos.empty(a)},header:function(a){return X.test(a.nodeName)},input:function(a){return W.test(a.nodeName)},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},text:function(a){var b;return"input"===a.nodeName.toLowerCase()&&"text"===a.type&&(null==(b=a.getAttribute("type"))||"text"===b.toLowerCase())},first:pa(function(){return[0]}),last:pa(function(a,b){return[b-1]}),eq:pa(function(a,b,c){return[c<0?c+b:c]}),even:pa(function(a,b){for(var c=0;c=0;)a.push(d);return a}),gt:pa(function(a,b,c){for(var d=c<0?c+b:c;++d1?function(b,c,d){var e=a.length;while(e--)if(!a[e](b,c,d))return!1;return!0}:a[0]}function va(a,b,c){for(var d=0,e=b.length;d-1&&(f[j]=!(g[j]=l))}}else r=wa(r===g?r.splice(o,r.length):r),e?e(null,g,r,i):G.apply(g,r)})}function ya(a){for(var b,c,e,f=a.length,g=d.relative[a[0].type],h=g||d.relative[" "],i=g?1:0,k=ta(function(a){return a===b},h,!0),l=ta(function(a){return I(b,a)>-1},h,!0),m=[function(a,c,d){var e=!g&&(d||c!==j)||((b=c).nodeType?k(a,c,d):l(a,c,d));return b=null,e}];i1&&ua(m),i>1&&sa(a.slice(0,i-1).concat({value:" "===a[i-2].type?"*":""})).replace(P,"$1"),c,i0,e=a.length>0,f=function(f,g,h,i,k){var l,o,q,r=0,s="0",t=f&&[],u=[],v=j,x=f||e&&d.find.TAG("*",k),y=w+=null==v?1:Math.random()||.1,z=x.length;for(k&&(j=g===n||g||k);s!==z&&null!=(l=x[s]);s++){if(e&&l){o=0,g||l.ownerDocument===n||(m(l),h=!p);while(q=a[o++])if(q(l,g||n,h)){i.push(l);break}k&&(w=y)}c&&((l=!q&&l)&&r--,f&&t.push(l))}if(r+=s,c&&s!==r){o=0;while(q=b[o++])q(t,u,g,h);if(f){if(r>0)while(s--)t[s]||u[s]||(u[s]=E.call(i));u=wa(u)}G.apply(i,u),k&&!f&&u.length>0&&r+b.length>1&&ga.uniqueSort(i)}return k&&(w=y,j=v),t};return c?ia(f):f}return h=ga.compile=function(a,b){var c,d=[],e=[],f=A[a+" "];if(!f){b||(b=g(a)),c=b.length;while(c--)f=ya(b[c]),f[u]?d.push(f):e.push(f);f=A(a,za(e,d)),f.selector=a}return f},i=ga.select=function(a,b,c,e){var f,i,j,k,l,m="function"==typeof a&&a,n=!e&&g(a=m.selector||a);if(c=c||[],1===n.length){if(i=n[0]=n[0].slice(0),i.length>2&&"ID"===(j=i[0]).type&&9===b.nodeType&&p&&d.relative[i[1].type]){if(b=(d.find.ID(j.matches[0].replace(_,aa),b)||[])[0],!b)return c;m&&(b=b.parentNode),a=a.slice(i.shift().value.length)}f=V.needsContext.test(a)?0:i.length;while(f--){if(j=i[f],d.relative[k=j.type])break;if((l=d.find[k])&&(e=l(j.matches[0].replace(_,aa),$.test(i[0].type)&&qa(b.parentNode)||b))){if(i.splice(f,1),a=e.length&&sa(i),!a)return G.apply(c,e),c;break}}}return(m||h(a,n))(e,b,!p,c,!b||$.test(a)&&qa(b.parentNode)||b),c},c.sortStable=u.split("").sort(B).join("")===u,c.detectDuplicates=!!l,m(),c.sortDetached=ja(function(a){return 1&a.compareDocumentPosition(n.createElement("fieldset"))}),ja(function(a){return a.innerHTML="","#"===a.firstChild.getAttribute("href")})||ka("type|href|height|width",function(a,b,c){if(!c)return a.getAttribute(b,"type"===b.toLowerCase()?1:2)}),c.attributes&&ja(function(a){return a.innerHTML="",a.firstChild.setAttribute("value",""),""===a.firstChild.getAttribute("value")})||ka("value",function(a,b,c){if(!c&&"input"===a.nodeName.toLowerCase())return a.defaultValue}),ja(function(a){return null==a.getAttribute("disabled")})||ka(J,function(a,b,c){var d;if(!c)return a[b]===!0?b.toLowerCase():(d=a.getAttributeNode(b))&&d.specified?d.value:null}),ga}(a);r.find=x,r.expr=x.selectors,r.expr[":"]=r.expr.pseudos,r.uniqueSort=r.unique=x.uniqueSort,r.text=x.getText,r.isXMLDoc=x.isXML,r.contains=x.contains,r.escapeSelector=x.escape;var y=function(a,b,c){var d=[],e=void 0!==c;while((a=a[b])&&9!==a.nodeType)if(1===a.nodeType){if(e&&r(a).is(c))break;d.push(a)}return d},z=function(a,b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c},A=r.expr.match.needsContext;function B(a,b){return a.nodeName&&a.nodeName.toLowerCase()===b.toLowerCase()}var C=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i,D=/^.[^:#\[\.,]*$/;function E(a,b,c){return r.isFunction(b)?r.grep(a,function(a,d){return!!b.call(a,d,a)!==c}):b.nodeType?r.grep(a,function(a){return a===b!==c}):"string"!=typeof b?r.grep(a,function(a){return i.call(b,a)>-1!==c}):D.test(b)?r.filter(b,a,c):(b=r.filter(b,a),r.grep(a,function(a){return i.call(b,a)>-1!==c&&1===a.nodeType}))}r.filter=function(a,b,c){var d=b[0];return c&&(a=":not("+a+")"),1===b.length&&1===d.nodeType?r.find.matchesSelector(d,a)?[d]:[]:r.find.matches(a,r.grep(b,function(a){return 1===a.nodeType}))},r.fn.extend({find:function(a){var b,c,d=this.length,e=this;if("string"!=typeof a)return this.pushStack(r(a).filter(function(){for(b=0;b1?r.uniqueSort(c):c},filter:function(a){return this.pushStack(E(this,a||[],!1))},not:function(a){return this.pushStack(E(this,a||[],!0))},is:function(a){return!!E(this,"string"==typeof a&&A.test(a)?r(a):a||[],!1).length}});var F,G=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/,H=r.fn.init=function(a,b,c){var e,f;if(!a)return this;if(c=c||F,"string"==typeof a){if(e="<"===a[0]&&">"===a[a.length-1]&&a.length>=3?[null,a,null]:G.exec(a),!e||!e[1]&&b)return!b||b.jquery?(b||c).find(a):this.constructor(b).find(a);if(e[1]){if(b=b instanceof r?b[0]:b,r.merge(this,r.parseHTML(e[1],b&&b.nodeType?b.ownerDocument||b:d,!0)),C.test(e[1])&&r.isPlainObject(b))for(e in b)r.isFunction(this[e])?this[e](b[e]):this.attr(e,b[e]);return this}return f=d.getElementById(e[2]),f&&(this[0]=f,this.length=1),this}return a.nodeType?(this[0]=a,this.length=1,this):r.isFunction(a)?void 0!==c.ready?c.ready(a):a(r):r.makeArray(a,this)};H.prototype=r.fn,F=r(d);var I=/^(?:parents|prev(?:Until|All))/,J={children:!0,contents:!0,next:!0,prev:!0};r.fn.extend({has:function(a){var b=r(a,this),c=b.length;return this.filter(function(){for(var a=0;a-1:1===c.nodeType&&r.find.matchesSelector(c,a))){f.push(c);break}return this.pushStack(f.length>1?r.uniqueSort(f):f)},index:function(a){return a?"string"==typeof a?i.call(r(a),this[0]):i.call(this,a.jquery?a[0]:a):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(a,b){return this.pushStack(r.uniqueSort(r.merge(this.get(),r(a,b))))},addBack:function(a){return this.add(null==a?this.prevObject:this.prevObject.filter(a))}});function K(a,b){while((a=a[b])&&1!==a.nodeType);return a}r.each({parent:function(a){var b=a.parentNode;return b&&11!==b.nodeType?b:null},parents:function(a){return y(a,"parentNode")},parentsUntil:function(a,b,c){return y(a,"parentNode",c)},next:function(a){return K(a,"nextSibling")},prev:function(a){return K(a,"previousSibling")},nextAll:function(a){return y(a,"nextSibling")},prevAll:function(a){return y(a,"previousSibling")},nextUntil:function(a,b,c){return y(a,"nextSibling",c)},prevUntil:function(a,b,c){return y(a,"previousSibling",c)},siblings:function(a){return z((a.parentNode||{}).firstChild,a)},children:function(a){return z(a.firstChild)},contents:function(a){return B(a,"iframe")?a.contentDocument:(B(a,"template")&&(a=a.content||a),r.merge([],a.childNodes))}},function(a,b){r.fn[a]=function(c,d){var e=r.map(this,b,c);return"Until"!==a.slice(-5)&&(d=c),d&&"string"==typeof d&&(e=r.filter(d,e)),this.length>1&&(J[a]||r.uniqueSort(e),I.test(a)&&e.reverse()),this.pushStack(e)}});var L=/[^\x20\t\r\n\f]+/g;function M(a){var b={};return r.each(a.match(L)||[],function(a,c){b[c]=!0}),b}r.Callbacks=function(a){a="string"==typeof a?M(a):r.extend({},a);var b,c,d,e,f=[],g=[],h=-1,i=function(){for(e=e||a.once,d=b=!0;g.length;h=-1){c=g.shift();while(++h-1)f.splice(c,1),c<=h&&h--}),this},has:function(a){return a?r.inArray(a,f)>-1:f.length>0},empty:function(){return f&&(f=[]),this},disable:function(){return e=g=[],f=c="",this},disabled:function(){return!f},lock:function(){return e=g=[],c||b||(f=c=""),this},locked:function(){return!!e},fireWith:function(a,c){return e||(c=c||[],c=[a,c.slice?c.slice():c],g.push(c),b||i()),this},fire:function(){return j.fireWith(this,arguments),this},fired:function(){return!!d}};return j};function N(a){return a}function O(a){throw a}function P(a,b,c,d){var e;try{a&&r.isFunction(e=a.promise)?e.call(a).done(b).fail(c):a&&r.isFunction(e=a.then)?e.call(a,b,c):b.apply(void 0,[a].slice(d))}catch(a){c.apply(void 0,[a])}}r.extend({Deferred:function(b){var c=[["notify","progress",r.Callbacks("memory"),r.Callbacks("memory"),2],["resolve","done",r.Callbacks("once memory"),r.Callbacks("once memory"),0,"resolved"],["reject","fail",r.Callbacks("once memory"),r.Callbacks("once memory"),1,"rejected"]],d="pending",e={state:function(){return d},always:function(){return f.done(arguments).fail(arguments),this},"catch":function(a){return e.then(null,a)},pipe:function(){var a=arguments;return r.Deferred(function(b){r.each(c,function(c,d){var e=r.isFunction(a[d[4]])&&a[d[4]];f[d[1]](function(){var a=e&&e.apply(this,arguments);a&&r.isFunction(a.promise)?a.promise().progress(b.notify).done(b.resolve).fail(b.reject):b[d[0]+"With"](this,e?[a]:arguments)})}),a=null}).promise()},then:function(b,d,e){var f=0;function g(b,c,d,e){return function(){var h=this,i=arguments,j=function(){var a,j;if(!(b=f&&(d!==O&&(h=void 0,i=[a]),c.rejectWith(h,i))}};b?k():(r.Deferred.getStackHook&&(k.stackTrace=r.Deferred.getStackHook()),a.setTimeout(k))}}return r.Deferred(function(a){c[0][3].add(g(0,a,r.isFunction(e)?e:N,a.notifyWith)),c[1][3].add(g(0,a,r.isFunction(b)?b:N)),c[2][3].add(g(0,a,r.isFunction(d)?d:O))}).promise()},promise:function(a){return null!=a?r.extend(a,e):e}},f={};return r.each(c,function(a,b){var g=b[2],h=b[5];e[b[1]]=g.add,h&&g.add(function(){d=h},c[3-a][2].disable,c[0][2].lock),g.add(b[3].fire),f[b[0]]=function(){return f[b[0]+"With"](this===f?void 0:this,arguments),this},f[b[0]+"With"]=g.fireWith}),e.promise(f),b&&b.call(f,f),f},when:function(a){var b=arguments.length,c=b,d=Array(c),e=f.call(arguments),g=r.Deferred(),h=function(a){return function(c){d[a]=this,e[a]=arguments.length>1?f.call(arguments):c,--b||g.resolveWith(d,e)}};if(b<=1&&(P(a,g.done(h(c)).resolve,g.reject,!b),"pending"===g.state()||r.isFunction(e[c]&&e[c].then)))return g.then();while(c--)P(e[c],h(c),g.reject);return g.promise()}});var Q=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;r.Deferred.exceptionHook=function(b,c){a.console&&a.console.warn&&b&&Q.test(b.name)&&a.console.warn("jQuery.Deferred exception: "+b.message,b.stack,c)},r.readyException=function(b){a.setTimeout(function(){throw b})};var R=r.Deferred();r.fn.ready=function(a){return R.then(a)["catch"](function(a){r.readyException(a)}),this},r.extend({isReady:!1,readyWait:1,ready:function(a){(a===!0?--r.readyWait:r.isReady)||(r.isReady=!0,a!==!0&&--r.readyWait>0||R.resolveWith(d,[r]))}}),r.ready.then=R.then;function S(){d.removeEventListener("DOMContentLoaded",S), +a.removeEventListener("load",S),r.ready()}"complete"===d.readyState||"loading"!==d.readyState&&!d.documentElement.doScroll?a.setTimeout(r.ready):(d.addEventListener("DOMContentLoaded",S),a.addEventListener("load",S));var T=function(a,b,c,d,e,f,g){var h=0,i=a.length,j=null==c;if("object"===r.type(c)){e=!0;for(h in c)T(a,b,h,c[h],!0,f,g)}else if(void 0!==d&&(e=!0,r.isFunction(d)||(g=!0),j&&(g?(b.call(a,d),b=null):(j=b,b=function(a,b,c){return j.call(r(a),c)})),b))for(;h1,null,!0)},removeData:function(a){return this.each(function(){X.remove(this,a)})}}),r.extend({queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=W.get(a,b),c&&(!d||Array.isArray(c)?d=W.access(a,b,r.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){b=b||"fx";var c=r.queue(a,b),d=c.length,e=c.shift(),f=r._queueHooks(a,b),g=function(){r.dequeue(a,b)};"inprogress"===e&&(e=c.shift(),d--),e&&("fx"===b&&c.unshift("inprogress"),delete f.stop,e.call(a,g,f)),!d&&f&&f.empty.fire()},_queueHooks:function(a,b){var c=b+"queueHooks";return W.get(a,c)||W.access(a,c,{empty:r.Callbacks("once memory").add(function(){W.remove(a,[b+"queue",c])})})}}),r.fn.extend({queue:function(a,b){var c=2;return"string"!=typeof a&&(b=a,a="fx",c--),arguments.length\x20\t\r\n\f]+)/i,la=/^$|\/(?:java|ecma)script/i,ma={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};ma.optgroup=ma.option,ma.tbody=ma.tfoot=ma.colgroup=ma.caption=ma.thead,ma.th=ma.td;function na(a,b){var c;return c="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):[],void 0===b||b&&B(a,b)?r.merge([a],c):c}function oa(a,b){for(var c=0,d=a.length;c-1)e&&e.push(f);else if(j=r.contains(f.ownerDocument,f),g=na(l.appendChild(f),"script"),j&&oa(g),c){k=0;while(f=g[k++])la.test(f.type||"")&&c.push(f)}return l}!function(){var a=d.createDocumentFragment(),b=a.appendChild(d.createElement("div")),c=d.createElement("input");c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),b.appendChild(c),o.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked,b.innerHTML="",o.noCloneChecked=!!b.cloneNode(!0).lastChild.defaultValue}();var ra=d.documentElement,sa=/^key/,ta=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,ua=/^([^.]*)(?:\.(.+)|)/;function va(){return!0}function wa(){return!1}function xa(){try{return d.activeElement}catch(a){}}function ya(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)ya(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=wa;else if(!e)return a;return 1===f&&(g=e,e=function(a){return r().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=r.guid++)),a.each(function(){r.event.add(this,b,e,d,c)})}r.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=W.get(a);if(q){c.handler&&(f=c,c=f.handler,e=f.selector),e&&r.find.matchesSelector(ra,e),c.guid||(c.guid=r.guid++),(i=q.events)||(i=q.events={}),(g=q.handle)||(g=q.handle=function(b){return"undefined"!=typeof r&&r.event.triggered!==b.type?r.event.dispatch.apply(a,arguments):void 0}),b=(b||"").match(L)||[""],j=b.length;while(j--)h=ua.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n&&(l=r.event.special[n]||{},n=(e?l.delegateType:l.bindType)||n,l=r.event.special[n]||{},k=r.extend({type:n,origType:p,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&r.expr.match.needsContext.test(e),namespace:o.join(".")},f),(m=i[n])||(m=i[n]=[],m.delegateCount=0,l.setup&&l.setup.call(a,d,o,g)!==!1||a.addEventListener&&a.addEventListener(n,g)),l.add&&(l.add.call(a,k),k.handler.guid||(k.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,k):m.push(k),r.event.global[n]=!0)}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,n,o,p,q=W.hasData(a)&&W.get(a);if(q&&(i=q.events)){b=(b||"").match(L)||[""],j=b.length;while(j--)if(h=ua.exec(b[j])||[],n=p=h[1],o=(h[2]||"").split(".").sort(),n){l=r.event.special[n]||{},n=(d?l.delegateType:l.bindType)||n,m=i[n]||[],h=h[2]&&new RegExp("(^|\\.)"+o.join("\\.(?:.*\\.|)")+"(\\.|$)"),g=f=m.length;while(f--)k=m[f],!e&&p!==k.origType||c&&c.guid!==k.guid||h&&!h.test(k.namespace)||d&&d!==k.selector&&("**"!==d||!k.selector)||(m.splice(f,1),k.selector&&m.delegateCount--,l.remove&&l.remove.call(a,k));g&&!m.length&&(l.teardown&&l.teardown.call(a,o,q.handle)!==!1||r.removeEvent(a,n,q.handle),delete i[n])}else for(n in i)r.event.remove(a,n+b[j],c,d,!0);r.isEmptyObject(i)&&W.remove(a,"handle events")}},dispatch:function(a){var b=r.event.fix(a),c,d,e,f,g,h,i=new Array(arguments.length),j=(W.get(this,"events")||{})[b.type]||[],k=r.event.special[b.type]||{};for(i[0]=b,c=1;c=1))for(;j!==this;j=j.parentNode||this)if(1===j.nodeType&&("click"!==a.type||j.disabled!==!0)){for(f=[],g={},c=0;c-1:r.find(e,this,null,[j]).length),g[e]&&f.push(d);f.length&&h.push({elem:j,handlers:f})}return j=this,i\x20\t\r\n\f]*)[^>]*)\/>/gi,Aa=/\s*$/g;function Ea(a,b){return B(a,"table")&&B(11!==b.nodeType?b:b.firstChild,"tr")?r(">tbody",a)[0]||a:a}function Fa(a){return a.type=(null!==a.getAttribute("type"))+"/"+a.type,a}function Ga(a){var b=Ca.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function Ha(a,b){var c,d,e,f,g,h,i,j;if(1===b.nodeType){if(W.hasData(a)&&(f=W.access(a),g=W.set(b,f),j=f.events)){delete g.handle,g.events={};for(e in j)for(c=0,d=j[e].length;c1&&"string"==typeof q&&!o.checkClone&&Ba.test(q))return a.each(function(e){var f=a.eq(e);s&&(b[0]=q.call(this,e,f.html())),Ja(f,b,c,d)});if(m&&(e=qa(b,a[0].ownerDocument,!1,a,d),f=e.firstChild,1===e.childNodes.length&&(e=f),f||d)){for(h=r.map(na(e,"script"),Fa),i=h.length;l")},clone:function(a,b,c){var d,e,f,g,h=a.cloneNode(!0),i=r.contains(a.ownerDocument,a);if(!(o.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||r.isXMLDoc(a)))for(g=na(h),f=na(a),d=0,e=f.length;d0&&oa(g,!i&&na(a,"script")),h},cleanData:function(a){for(var b,c,d,e=r.event.special,f=0;void 0!==(c=a[f]);f++)if(U(c)){if(b=c[W.expando]){if(b.events)for(d in b.events)e[d]?r.event.remove(c,d):r.removeEvent(c,d,b.handle);c[W.expando]=void 0}c[X.expando]&&(c[X.expando]=void 0)}}}),r.fn.extend({detach:function(a){return Ka(this,a,!0)},remove:function(a){return Ka(this,a)},text:function(a){return T(this,function(a){return void 0===a?r.text(this):this.empty().each(function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=a)})},null,a,arguments.length)},append:function(){return Ja(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ea(this,a);b.appendChild(a)}})},prepend:function(){return Ja(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ea(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return Ja(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return Ja(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},empty:function(){for(var a,b=0;null!=(a=this[b]);b++)1===a.nodeType&&(r.cleanData(na(a,!1)),a.textContent="");return this},clone:function(a,b){return a=null!=a&&a,b=null==b?a:b,this.map(function(){return r.clone(this,a,b)})},html:function(a){return T(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a&&1===b.nodeType)return b.innerHTML;if("string"==typeof a&&!Aa.test(a)&&!ma[(ka.exec(a)||["",""])[1].toLowerCase()]){a=r.htmlPrefilter(a);try{for(;c1)}});function _a(a,b,c,d,e){return new _a.prototype.init(a,b,c,d,e)}r.Tween=_a,_a.prototype={constructor:_a,init:function(a,b,c,d,e,f){this.elem=a,this.prop=c,this.easing=e||r.easing._default,this.options=b,this.start=this.now=this.cur(),this.end=d,this.unit=f||(r.cssNumber[c]?"":"px")},cur:function(){var a=_a.propHooks[this.prop];return a&&a.get?a.get(this):_a.propHooks._default.get(this)},run:function(a){var b,c=_a.propHooks[this.prop];return this.options.duration?this.pos=b=r.easing[this.easing](a,this.options.duration*a,0,1,this.options.duration):this.pos=b=a,this.now=(this.end-this.start)*b+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),c&&c.set?c.set(this):_a.propHooks._default.set(this),this}},_a.prototype.init.prototype=_a.prototype,_a.propHooks={_default:{get:function(a){var b;return 1!==a.elem.nodeType||null!=a.elem[a.prop]&&null==a.elem.style[a.prop]?a.elem[a.prop]:(b=r.css(a.elem,a.prop,""),b&&"auto"!==b?b:0)},set:function(a){r.fx.step[a.prop]?r.fx.step[a.prop](a):1!==a.elem.nodeType||null==a.elem.style[r.cssProps[a.prop]]&&!r.cssHooks[a.prop]?a.elem[a.prop]=a.now:r.style(a.elem,a.prop,a.now+a.unit)}}},_a.propHooks.scrollTop=_a.propHooks.scrollLeft={set:function(a){a.elem.nodeType&&a.elem.parentNode&&(a.elem[a.prop]=a.now)}},r.easing={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2},_default:"swing"},r.fx=_a.prototype.init,r.fx.step={};var ab,bb,cb=/^(?:toggle|show|hide)$/,db=/queueHooks$/;function eb(){bb&&(d.hidden===!1&&a.requestAnimationFrame?a.requestAnimationFrame(eb):a.setTimeout(eb,r.fx.interval),r.fx.tick())}function fb(){return a.setTimeout(function(){ab=void 0}),ab=r.now()}function gb(a,b){var c,d=0,e={height:a};for(b=b?1:0;d<4;d+=2-b)c=ca[d],e["margin"+c]=e["padding"+c]=a;return b&&(e.opacity=e.width=a),e}function hb(a,b,c){for(var d,e=(kb.tweeners[b]||[]).concat(kb.tweeners["*"]),f=0,g=e.length;f1)},removeAttr:function(a){return this.each(function(){r.removeAttr(this,a)})}}),r.extend({attr:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return"undefined"==typeof a.getAttribute?r.prop(a,b,c):(1===f&&r.isXMLDoc(a)||(e=r.attrHooks[b.toLowerCase()]||(r.expr.match.bool.test(b)?lb:void 0)),void 0!==c?null===c?void r.removeAttr(a,b):e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:(a.setAttribute(b,c+""),c):e&&"get"in e&&null!==(d=e.get(a,b))?d:(d=r.find.attr(a,b), +null==d?void 0:d))},attrHooks:{type:{set:function(a,b){if(!o.radioValue&&"radio"===b&&B(a,"input")){var c=a.value;return a.setAttribute("type",b),c&&(a.value=c),b}}}},removeAttr:function(a,b){var c,d=0,e=b&&b.match(L);if(e&&1===a.nodeType)while(c=e[d++])a.removeAttribute(c)}}),lb={set:function(a,b,c){return b===!1?r.removeAttr(a,c):a.setAttribute(c,c),c}},r.each(r.expr.match.bool.source.match(/\w+/g),function(a,b){var c=mb[b]||r.find.attr;mb[b]=function(a,b,d){var e,f,g=b.toLowerCase();return d||(f=mb[g],mb[g]=e,e=null!=c(a,b,d)?g:null,mb[g]=f),e}});var nb=/^(?:input|select|textarea|button)$/i,ob=/^(?:a|area)$/i;r.fn.extend({prop:function(a,b){return T(this,r.prop,a,b,arguments.length>1)},removeProp:function(a){return this.each(function(){delete this[r.propFix[a]||a]})}}),r.extend({prop:function(a,b,c){var d,e,f=a.nodeType;if(3!==f&&8!==f&&2!==f)return 1===f&&r.isXMLDoc(a)||(b=r.propFix[b]||b,e=r.propHooks[b]),void 0!==c?e&&"set"in e&&void 0!==(d=e.set(a,c,b))?d:a[b]=c:e&&"get"in e&&null!==(d=e.get(a,b))?d:a[b]},propHooks:{tabIndex:{get:function(a){var b=r.find.attr(a,"tabindex");return b?parseInt(b,10):nb.test(a.nodeName)||ob.test(a.nodeName)&&a.href?0:-1}}},propFix:{"for":"htmlFor","class":"className"}}),o.optSelected||(r.propHooks.selected={get:function(a){var b=a.parentNode;return b&&b.parentNode&&b.parentNode.selectedIndex,null},set:function(a){var b=a.parentNode;b&&(b.selectedIndex,b.parentNode&&b.parentNode.selectedIndex)}}),r.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],function(){r.propFix[this.toLowerCase()]=this});function pb(a){var b=a.match(L)||[];return b.join(" ")}function qb(a){return a.getAttribute&&a.getAttribute("class")||""}r.fn.extend({addClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).addClass(a.call(this,b,qb(this)))});if("string"==typeof a&&a){b=a.match(L)||[];while(c=this[i++])if(e=qb(c),d=1===c.nodeType&&" "+pb(e)+" "){g=0;while(f=b[g++])d.indexOf(" "+f+" ")<0&&(d+=f+" ");h=pb(d),e!==h&&c.setAttribute("class",h)}}return this},removeClass:function(a){var b,c,d,e,f,g,h,i=0;if(r.isFunction(a))return this.each(function(b){r(this).removeClass(a.call(this,b,qb(this)))});if(!arguments.length)return this.attr("class","");if("string"==typeof a&&a){b=a.match(L)||[];while(c=this[i++])if(e=qb(c),d=1===c.nodeType&&" "+pb(e)+" "){g=0;while(f=b[g++])while(d.indexOf(" "+f+" ")>-1)d=d.replace(" "+f+" "," ");h=pb(d),e!==h&&c.setAttribute("class",h)}}return this},toggleClass:function(a,b){var c=typeof a;return"boolean"==typeof b&&"string"===c?b?this.addClass(a):this.removeClass(a):r.isFunction(a)?this.each(function(c){r(this).toggleClass(a.call(this,c,qb(this),b),b)}):this.each(function(){var b,d,e,f;if("string"===c){d=0,e=r(this),f=a.match(L)||[];while(b=f[d++])e.hasClass(b)?e.removeClass(b):e.addClass(b)}else void 0!==a&&"boolean"!==c||(b=qb(this),b&&W.set(this,"__className__",b),this.setAttribute&&this.setAttribute("class",b||a===!1?"":W.get(this,"__className__")||""))})},hasClass:function(a){var b,c,d=0;b=" "+a+" ";while(c=this[d++])if(1===c.nodeType&&(" "+pb(qb(c))+" ").indexOf(b)>-1)return!0;return!1}});var rb=/\r/g;r.fn.extend({val:function(a){var b,c,d,e=this[0];{if(arguments.length)return d=r.isFunction(a),this.each(function(c){var e;1===this.nodeType&&(e=d?a.call(this,c,r(this).val()):a,null==e?e="":"number"==typeof e?e+="":Array.isArray(e)&&(e=r.map(e,function(a){return null==a?"":a+""})),b=r.valHooks[this.type]||r.valHooks[this.nodeName.toLowerCase()],b&&"set"in b&&void 0!==b.set(this,e,"value")||(this.value=e))});if(e)return b=r.valHooks[e.type]||r.valHooks[e.nodeName.toLowerCase()],b&&"get"in b&&void 0!==(c=b.get(e,"value"))?c:(c=e.value,"string"==typeof c?c.replace(rb,""):null==c?"":c)}}}),r.extend({valHooks:{option:{get:function(a){var b=r.find.attr(a,"value");return null!=b?b:pb(r.text(a))}},select:{get:function(a){var b,c,d,e=a.options,f=a.selectedIndex,g="select-one"===a.type,h=g?null:[],i=g?f+1:e.length;for(d=f<0?i:g?f:0;d-1)&&(c=!0);return c||(a.selectedIndex=-1),f}}}}),r.each(["radio","checkbox"],function(){r.valHooks[this]={set:function(a,b){if(Array.isArray(b))return a.checked=r.inArray(r(a).val(),b)>-1}},o.checkOn||(r.valHooks[this].get=function(a){return null===a.getAttribute("value")?"on":a.value})});var sb=/^(?:focusinfocus|focusoutblur)$/;r.extend(r.event,{trigger:function(b,c,e,f){var g,h,i,j,k,m,n,o=[e||d],p=l.call(b,"type")?b.type:b,q=l.call(b,"namespace")?b.namespace.split("."):[];if(h=i=e=e||d,3!==e.nodeType&&8!==e.nodeType&&!sb.test(p+r.event.triggered)&&(p.indexOf(".")>-1&&(q=p.split("."),p=q.shift(),q.sort()),k=p.indexOf(":")<0&&"on"+p,b=b[r.expando]?b:new r.Event(p,"object"==typeof b&&b),b.isTrigger=f?2:3,b.namespace=q.join("."),b.rnamespace=b.namespace?new RegExp("(^|\\.)"+q.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=e),c=null==c?[b]:r.makeArray(c,[b]),n=r.event.special[p]||{},f||!n.trigger||n.trigger.apply(e,c)!==!1)){if(!f&&!n.noBubble&&!r.isWindow(e)){for(j=n.delegateType||p,sb.test(j+p)||(h=h.parentNode);h;h=h.parentNode)o.push(h),i=h;i===(e.ownerDocument||d)&&o.push(i.defaultView||i.parentWindow||a)}g=0;while((h=o[g++])&&!b.isPropagationStopped())b.type=g>1?j:n.bindType||p,m=(W.get(h,"events")||{})[b.type]&&W.get(h,"handle"),m&&m.apply(h,c),m=k&&h[k],m&&m.apply&&U(h)&&(b.result=m.apply(h,c),b.result===!1&&b.preventDefault());return b.type=p,f||b.isDefaultPrevented()||n._default&&n._default.apply(o.pop(),c)!==!1||!U(e)||k&&r.isFunction(e[p])&&!r.isWindow(e)&&(i=e[k],i&&(e[k]=null),r.event.triggered=p,e[p](),r.event.triggered=void 0,i&&(e[k]=i)),b.result}},simulate:function(a,b,c){var d=r.extend(new r.Event,c,{type:a,isSimulated:!0});r.event.trigger(d,null,b)}}),r.fn.extend({trigger:function(a,b){return this.each(function(){r.event.trigger(a,b,this)})},triggerHandler:function(a,b){var c=this[0];if(c)return r.event.trigger(a,b,c,!0)}}),r.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(a,b){r.fn[b]=function(a,c){return arguments.length>0?this.on(b,null,a,c):this.trigger(b)}}),r.fn.extend({hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}}),o.focusin="onfocusin"in a,o.focusin||r.each({focus:"focusin",blur:"focusout"},function(a,b){var c=function(a){r.event.simulate(b,a.target,r.event.fix(a))};r.event.special[b]={setup:function(){var d=this.ownerDocument||this,e=W.access(d,b);e||d.addEventListener(a,c,!0),W.access(d,b,(e||0)+1)},teardown:function(){var d=this.ownerDocument||this,e=W.access(d,b)-1;e?W.access(d,b,e):(d.removeEventListener(a,c,!0),W.remove(d,b))}}});var tb=a.location,ub=r.now(),vb=/\?/;r.parseXML=function(b){var c;if(!b||"string"!=typeof b)return null;try{c=(new a.DOMParser).parseFromString(b,"text/xml")}catch(d){c=void 0}return c&&!c.getElementsByTagName("parsererror").length||r.error("Invalid XML: "+b),c};var wb=/\[\]$/,xb=/\r?\n/g,yb=/^(?:submit|button|image|reset|file)$/i,zb=/^(?:input|select|textarea|keygen)/i;function Ab(a,b,c,d){var e;if(Array.isArray(b))r.each(b,function(b,e){c||wb.test(a)?d(a,e):Ab(a+"["+("object"==typeof e&&null!=e?b:"")+"]",e,c,d)});else if(c||"object"!==r.type(b))d(a,b);else for(e in b)Ab(a+"["+e+"]",b[e],c,d)}r.param=function(a,b){var c,d=[],e=function(a,b){var c=r.isFunction(b)?b():b;d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(null==c?"":c)};if(Array.isArray(a)||a.jquery&&!r.isPlainObject(a))r.each(a,function(){e(this.name,this.value)});else for(c in a)Ab(c,a[c],b,e);return d.join("&")},r.fn.extend({serialize:function(){return r.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var a=r.prop(this,"elements");return a?r.makeArray(a):this}).filter(function(){var a=this.type;return this.name&&!r(this).is(":disabled")&&zb.test(this.nodeName)&&!yb.test(a)&&(this.checked||!ja.test(a))}).map(function(a,b){var c=r(this).val();return null==c?null:Array.isArray(c)?r.map(c,function(a){return{name:b.name,value:a.replace(xb,"\r\n")}}):{name:b.name,value:c.replace(xb,"\r\n")}}).get()}});var Bb=/%20/g,Cb=/#.*$/,Db=/([?&])_=[^&]*/,Eb=/^(.*?):[ \t]*([^\r\n]*)$/gm,Fb=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,Gb=/^(?:GET|HEAD)$/,Hb=/^\/\//,Ib={},Jb={},Kb="*/".concat("*"),Lb=d.createElement("a");Lb.href=tb.href;function Mb(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");var d,e=0,f=b.toLowerCase().match(L)||[];if(r.isFunction(c))while(d=f[e++])"+"===d[0]?(d=d.slice(1)||"*",(a[d]=a[d]||[]).unshift(c)):(a[d]=a[d]||[]).push(c)}}function Nb(a,b,c,d){var e={},f=a===Jb;function g(h){var i;return e[h]=!0,r.each(a[h]||[],function(a,h){var j=h(b,c,d);return"string"!=typeof j||f||e[j]?f?!(i=j):void 0:(b.dataTypes.unshift(j),g(j),!1)}),i}return g(b.dataTypes[0])||!e["*"]&&g("*")}function Ob(a,b){var c,d,e=r.ajaxSettings.flatOptions||{};for(c in b)void 0!==b[c]&&((e[c]?a:d||(d={}))[c]=b[c]);return d&&r.extend(!0,a,d),a}function Pb(a,b,c){var d,e,f,g,h=a.contents,i=a.dataTypes;while("*"===i[0])i.shift(),void 0===d&&(d=a.mimeType||b.getResponseHeader("Content-Type"));if(d)for(e in h)if(h[e]&&h[e].test(d)){i.unshift(e);break}if(i[0]in c)f=i[0];else{for(e in c){if(!i[0]||a.converters[e+" "+i[0]]){f=e;break}g||(g=e)}f=f||g}if(f)return f!==i[0]&&i.unshift(f),c[f]}function Qb(a,b,c,d){var e,f,g,h,i,j={},k=a.dataTypes.slice();if(k[1])for(g in a.converters)j[g.toLowerCase()]=a.converters[g];f=k.shift();while(f)if(a.responseFields[f]&&(c[a.responseFields[f]]=b),!i&&d&&a.dataFilter&&(b=a.dataFilter(b,a.dataType)),i=f,f=k.shift())if("*"===f)f=i;else if("*"!==i&&i!==f){if(g=j[i+" "+f]||j["* "+f],!g)for(e in j)if(h=e.split(" "),h[1]===f&&(g=j[i+" "+h[0]]||j["* "+h[0]])){g===!0?g=j[e]:j[e]!==!0&&(f=h[0],k.unshift(h[1]));break}if(g!==!0)if(g&&a["throws"])b=g(b);else try{b=g(b)}catch(l){return{state:"parsererror",error:g?l:"No conversion from "+i+" to "+f}}}return{state:"success",data:b}}r.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:tb.href,type:"GET",isLocal:Fb.test(tb.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Kb,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":r.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(a,b){return b?Ob(Ob(a,r.ajaxSettings),b):Ob(r.ajaxSettings,a)},ajaxPrefilter:Mb(Ib),ajaxTransport:Mb(Jb),ajax:function(b,c){"object"==typeof b&&(c=b,b=void 0),c=c||{};var e,f,g,h,i,j,k,l,m,n,o=r.ajaxSetup({},c),p=o.context||o,q=o.context&&(p.nodeType||p.jquery)?r(p):r.event,s=r.Deferred(),t=r.Callbacks("once memory"),u=o.statusCode||{},v={},w={},x="canceled",y={readyState:0,getResponseHeader:function(a){var b;if(k){if(!h){h={};while(b=Eb.exec(g))h[b[1].toLowerCase()]=b[2]}b=h[a.toLowerCase()]}return null==b?null:b},getAllResponseHeaders:function(){return k?g:null},setRequestHeader:function(a,b){return null==k&&(a=w[a.toLowerCase()]=w[a.toLowerCase()]||a,v[a]=b),this},overrideMimeType:function(a){return null==k&&(o.mimeType=a),this},statusCode:function(a){var b;if(a)if(k)y.always(a[y.status]);else for(b in a)u[b]=[u[b],a[b]];return this},abort:function(a){var b=a||x;return e&&e.abort(b),A(0,b),this}};if(s.promise(y),o.url=((b||o.url||tb.href)+"").replace(Hb,tb.protocol+"//"),o.type=c.method||c.type||o.method||o.type,o.dataTypes=(o.dataType||"*").toLowerCase().match(L)||[""],null==o.crossDomain){j=d.createElement("a");try{j.href=o.url,j.href=j.href,o.crossDomain=Lb.protocol+"//"+Lb.host!=j.protocol+"//"+j.host}catch(z){o.crossDomain=!0}}if(o.data&&o.processData&&"string"!=typeof o.data&&(o.data=r.param(o.data,o.traditional)),Nb(Ib,o,c,y),k)return y;l=r.event&&o.global,l&&0===r.active++&&r.event.trigger("ajaxStart"),o.type=o.type.toUpperCase(),o.hasContent=!Gb.test(o.type),f=o.url.replace(Cb,""),o.hasContent?o.data&&o.processData&&0===(o.contentType||"").indexOf("application/x-www-form-urlencoded")&&(o.data=o.data.replace(Bb,"+")):(n=o.url.slice(f.length),o.data&&(f+=(vb.test(f)?"&":"?")+o.data,delete o.data),o.cache===!1&&(f=f.replace(Db,"$1"),n=(vb.test(f)?"&":"?")+"_="+ub++ +n),o.url=f+n),o.ifModified&&(r.lastModified[f]&&y.setRequestHeader("If-Modified-Since",r.lastModified[f]),r.etag[f]&&y.setRequestHeader("If-None-Match",r.etag[f])),(o.data&&o.hasContent&&o.contentType!==!1||c.contentType)&&y.setRequestHeader("Content-Type",o.contentType),y.setRequestHeader("Accept",o.dataTypes[0]&&o.accepts[o.dataTypes[0]]?o.accepts[o.dataTypes[0]]+("*"!==o.dataTypes[0]?", "+Kb+"; q=0.01":""):o.accepts["*"]);for(m in o.headers)y.setRequestHeader(m,o.headers[m]);if(o.beforeSend&&(o.beforeSend.call(p,y,o)===!1||k))return y.abort();if(x="abort",t.add(o.complete),y.done(o.success),y.fail(o.error),e=Nb(Jb,o,c,y)){if(y.readyState=1,l&&q.trigger("ajaxSend",[y,o]),k)return y;o.async&&o.timeout>0&&(i=a.setTimeout(function(){y.abort("timeout")},o.timeout));try{k=!1,e.send(v,A)}catch(z){if(k)throw z;A(-1,z)}}else A(-1,"No Transport");function A(b,c,d,h){var j,m,n,v,w,x=c;k||(k=!0,i&&a.clearTimeout(i),e=void 0,g=h||"",y.readyState=b>0?4:0,j=b>=200&&b<300||304===b,d&&(v=Pb(o,y,d)),v=Qb(o,v,y,j),j?(o.ifModified&&(w=y.getResponseHeader("Last-Modified"),w&&(r.lastModified[f]=w),w=y.getResponseHeader("etag"),w&&(r.etag[f]=w)),204===b||"HEAD"===o.type?x="nocontent":304===b?x="notmodified":(x=v.state,m=v.data,n=v.error,j=!n)):(n=x,!b&&x||(x="error",b<0&&(b=0))),y.status=b,y.statusText=(c||x)+"",j?s.resolveWith(p,[m,x,y]):s.rejectWith(p,[y,x,n]),y.statusCode(u),u=void 0,l&&q.trigger(j?"ajaxSuccess":"ajaxError",[y,o,j?m:n]),t.fireWith(p,[y,x]),l&&(q.trigger("ajaxComplete",[y,o]),--r.active||r.event.trigger("ajaxStop")))}return y},getJSON:function(a,b,c){return r.get(a,b,c,"json")},getScript:function(a,b){return r.get(a,void 0,b,"script")}}),r.each(["get","post"],function(a,b){r[b]=function(a,c,d,e){return r.isFunction(c)&&(e=e||d,d=c,c=void 0),r.ajax(r.extend({url:a,type:b,dataType:e,data:c,success:d},r.isPlainObject(a)&&a))}}),r._evalUrl=function(a){return r.ajax({url:a,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,"throws":!0})},r.fn.extend({wrapAll:function(a){var b;return this[0]&&(r.isFunction(a)&&(a=a.call(this[0])),b=r(a,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstElementChild)a=a.firstElementChild;return a}).append(this)),this},wrapInner:function(a){return r.isFunction(a)?this.each(function(b){r(this).wrapInner(a.call(this,b))}):this.each(function(){var b=r(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=r.isFunction(a);return this.each(function(c){r(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(a){return this.parent(a).not("body").each(function(){r(this).replaceWith(this.childNodes)}),this}}),r.expr.pseudos.hidden=function(a){return!r.expr.pseudos.visible(a)},r.expr.pseudos.visible=function(a){return!!(a.offsetWidth||a.offsetHeight||a.getClientRects().length)},r.ajaxSettings.xhr=function(){try{return new a.XMLHttpRequest}catch(b){}};var Rb={0:200,1223:204},Sb=r.ajaxSettings.xhr();o.cors=!!Sb&&"withCredentials"in Sb,o.ajax=Sb=!!Sb,r.ajaxTransport(function(b){var c,d;if(o.cors||Sb&&!b.crossDomain)return{send:function(e,f){var g,h=b.xhr();if(h.open(b.type,b.url,b.async,b.username,b.password),b.xhrFields)for(g in b.xhrFields)h[g]=b.xhrFields[g];b.mimeType&&h.overrideMimeType&&h.overrideMimeType(b.mimeType),b.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest");for(g in e)h.setRequestHeader(g,e[g]);c=function(a){return function(){c&&(c=d=h.onload=h.onerror=h.onabort=h.onreadystatechange=null,"abort"===a?h.abort():"error"===a?"number"!=typeof h.status?f(0,"error"):f(h.status,h.statusText):f(Rb[h.status]||h.status,h.statusText,"text"!==(h.responseType||"text")||"string"!=typeof h.responseText?{binary:h.response}:{text:h.responseText},h.getAllResponseHeaders()))}},h.onload=c(),d=h.onerror=c("error"),void 0!==h.onabort?h.onabort=d:h.onreadystatechange=function(){4===h.readyState&&a.setTimeout(function(){c&&d()})},c=c("abort");try{h.send(b.hasContent&&b.data||null)}catch(i){if(c)throw i}},abort:function(){c&&c()}}}),r.ajaxPrefilter(function(a){a.crossDomain&&(a.contents.script=!1)}),r.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(a){return r.globalEval(a),a}}}),r.ajaxPrefilter("script",function(a){void 0===a.cache&&(a.cache=!1),a.crossDomain&&(a.type="GET")}),r.ajaxTransport("script",function(a){if(a.crossDomain){var b,c;return{send:function(e,f){b=r("

Comment
Announcement
还没想好说什么
Recent Post
Info
Article :
2
Run time :
Total Count :
1.4k
UV :
PV :
Last Push :
访客地图
\ No newline at end of file diff --git a/tags/github/index.html b/tags/github/index.html deleted file mode 100644 index 489853e..0000000 --- a/tags/github/index.html +++ /dev/null @@ -1,158 +0,0 @@ -Tag: github | Bluecode - - - - - - - -
Tag - github
2022
利用GitHub自动化部署Blog
利用GitHub自动化部署Blog
Announcement
还没想好说什么
Recent Post
Info
Article :
2
Run time :
Total Count :
1.4k
UV :
PV :
Last Push :
访客地图
\ No newline at end of file diff --git a/tags/hexo/index.html b/tags/hexo/index.html deleted file mode 100644 index 74e380d..0000000 --- a/tags/hexo/index.html +++ /dev/null @@ -1,158 +0,0 @@ -Tag: hexo | Bluecode - - - - - - - -
Tag - hexo
2022
利用GitHub自动化部署Blog
利用GitHub自动化部署Blog
Announcement
还没想好说什么
Recent Post
Info
Article :
2
Run time :
Total Count :
1.4k
UV :
PV :
Last Push :
访客地图
\ No newline at end of file diff --git a/tags/index.html b/tags/index.html index 4171ec8..53b6b78 100644 --- a/tags/index.html +++ b/tags/index.html @@ -1,185 +1 @@ -tags | Bluecode - - - - - - - - - -

Comment
Announcement
还没想好说什么
Recent Post
Info
Article :
2
Run time :
Total Count :
1.4k
UV :
PV :
Last Push :
访客地图
\ No newline at end of file +tags | bluecode
John Doe 10 X 10
Last updated: 2020-04-24
John Doe:~ Desktop$ node tags.js

> Tags.all
\ No newline at end of file