From ddd22288fa92771499a04d0a00149a68861ae216 Mon Sep 17 00:00:00 2001 From: James Feng Cao Date: Sun, 9 Dec 2018 22:35:03 +0800 Subject: [PATCH] blog update --- 2018/12/09/bc/index.html | 343 +- 2018/12/09/gluplot/index.html | 343 +- 2018/12/09/hosts/index.html | 338 +- 2018/12/09/search/index.html | 334 +- archives/2018/12/index.html | 423 +- archives/2018/index.html | 423 +- archives/index.html | 423 +- css/aircloud.css | 1208 ++++++ css/aircloud.less | 21 + css/fonts/FontAwesome.otf | Bin 62856 -> 0 bytes css/fonts/fontawesome-webfont.eot | Bin 38205 -> 0 bytes css/fonts/fontawesome-webfont.svg | 414 -- css/fonts/fontawesome-webfont.ttf | Bin 80652 -> 0 bytes css/fonts/fontawesome-webfont.woff | Bin 44432 -> 0 bytes css/gitment.css | 1146 ++++++ css/images/banner.jpg | Bin 224710 -> 0 bytes css/style.css | 1379 ------- fancybox/blank.gif | Bin 43 -> 0 bytes fancybox/fancybox_loading.gif | Bin 6567 -> 0 bytes fancybox/fancybox_loading@2x.gif | Bin 13984 -> 0 bytes fancybox/fancybox_overlay.png | Bin 1003 -> 0 bytes fancybox/fancybox_sprite.png | Bin 1362 -> 0 bytes fancybox/fancybox_sprite@2x.png | Bin 6553 -> 0 bytes fancybox/helpers/fancybox_buttons.png | Bin 1080 -> 0 bytes fancybox/helpers/jquery.fancybox-buttons.css | 97 - fancybox/helpers/jquery.fancybox-buttons.js | 122 - fancybox/helpers/jquery.fancybox-media.js | 199 - fancybox/helpers/jquery.fancybox-thumbs.css | 55 - fancybox/helpers/jquery.fancybox-thumbs.js | 165 - fancybox/jquery.fancybox.css | 273 -- fancybox/jquery.fancybox.js | 2017 ---------- fancybox/jquery.fancybox.pack.js | 46 - index.html | 458 +-- js/gitment.js | 3757 ++++++++++++++++++ js/index.js | 367 ++ js/script.js | 137 - 36 files changed, 8033 insertions(+), 6455 deletions(-) create mode 100644 css/aircloud.css create mode 100644 css/aircloud.less delete mode 100644 css/fonts/FontAwesome.otf delete mode 100644 css/fonts/fontawesome-webfont.eot delete mode 100644 css/fonts/fontawesome-webfont.svg delete mode 100644 css/fonts/fontawesome-webfont.ttf delete mode 100644 css/fonts/fontawesome-webfont.woff create mode 100644 css/gitment.css delete mode 100644 css/images/banner.jpg delete mode 100644 css/style.css delete mode 100644 fancybox/blank.gif delete mode 100644 fancybox/fancybox_loading.gif delete mode 100644 fancybox/fancybox_loading@2x.gif delete mode 100644 fancybox/fancybox_overlay.png delete mode 100644 fancybox/fancybox_sprite.png delete mode 100644 fancybox/fancybox_sprite@2x.png delete mode 100644 fancybox/helpers/fancybox_buttons.png delete mode 100644 fancybox/helpers/jquery.fancybox-buttons.css delete mode 100644 fancybox/helpers/jquery.fancybox-buttons.js delete mode 100644 fancybox/helpers/jquery.fancybox-media.js delete mode 100644 fancybox/helpers/jquery.fancybox-thumbs.css delete mode 100644 fancybox/helpers/jquery.fancybox-thumbs.js delete mode 100644 fancybox/jquery.fancybox.css delete mode 100644 fancybox/jquery.fancybox.js delete mode 100644 fancybox/jquery.fancybox.pack.js create mode 100644 js/gitment.js create mode 100644 js/index.js delete mode 100644 js/script.js diff --git a/2018/12/09/bc/index.html b/2018/12/09/bc/index.html index 1ec458f..2c59552 100644 --- a/2018/12/09/bc/index.html +++ b/2018/12/09/bc/index.html @@ -1,85 +1,129 @@ - + - - + + + + + + + - - 配置浏览器地址栏作为超级计算器(bc) | uWeb - - - - - - - - - - - - - - - - - - - - + + + 配置浏览器地址栏作为超级计算器(bc) - undefined + + + + + + + + + + - - -
-
- -
-
- -
- - -
- - -

- 配置浏览器地址栏作为超级计算器(bc) -

- -
+ + + + +
+ +
+ +
-
- +
+ + + + +
+
+
+ + + search +
+
+ +
+
+
+
+ +
+
+ +
+ + + + +
+
+ 配置浏览器地址栏作为超级计算器(bc) +
+ + +

使用Android端uweb浏览器
Gnu bc计算器支持无限精度,可轻易扩展函数库、常数库。

  • 安装uweb定制Termux应用(长按[PC]选择”Symbian”再刷新网页可直接下载):

    https://pan.baidu.com/s/1WwQ9yhPlu95sFtttlzDXFA
  • @@ -87,105 +131,62 @@

    • bc: 计算器。


    • 配置文件/sdcard/uweb/cmds.txt如下:

      计算器:text/html:echo “%s”|bc -l -q



      更多bc扩展库:(扩展库可下载至/sdcard/uweb目录下)

      https://github.com/susca/bc-extensions

      phodd.net/gnu-bc

      www.numbertheory.org/gnubc/gnubc.html



      使用扩展库以后cmds.txt配置如下:

      计算器:text/html:echo “%s”|bc -l -q extensions.bc scientific_constants.bc

      全能计算器:text/html:echo “%s”|bc -l -q *.bc


      - + +
      +
      +
      +
      + +
      +
      +
      - -
      - - - - - -
      - -
      - -
      +
      - +
      - - - - + + + + - \ No newline at end of file + + + + + + + + + + diff --git a/2018/12/09/gluplot/index.html b/2018/12/09/gluplot/index.html index d0e5fb1..816be1d 100644 --- a/2018/12/09/gluplot/index.html +++ b/2018/12/09/gluplot/index.html @@ -1,85 +1,129 @@ - + - - + + + + + + + - - 利用浏览器地址栏对函数作图 | uWeb - - - - - - - - - - - - - - - - - - - - + + + 利用浏览器地址栏对函数作图 - undefined + + + + + + + + + + - - -
      -
      - -
      -
      - -
      - - -
      - - -

      - 利用浏览器地址栏对函数作图 -

      - -
      + + + + +
      + +
      + +
      -
      - +
      + + + + +
      +
      +
      + + + search +
      +
      + +
      +
      +
      +
      + +
      +
      + +
      + + + + +
      +
      + 利用浏览器地址栏对函数作图 +
      + + +

      使用Android端uweb浏览器
      Termux提供了方便的软件包管理系统,缺省的uWeb地址栏功能配置需用到作图软件gnuplot。

      • 安装uweb定制Termux应用(长按[PC]选择”Symbian”再刷新网页可直接下载):

        https://pan.baidu.com/s/1WwQ9yhPlu95sFtttlzDXFA
      • @@ -88,105 +132,62 @@

      • gnuplot: 作图工具。


      • 配置文件/sdcard/uweb/cmds.txt如下:

        命令:text/plain:%s

        函数作图:image/svg+xml:gnuplot -e ‘set term svg;set output; plot %s’

        函数作图(3d):image/svg+xml:gnuplot -e ‘set term svg;set output; splot %s’

        超级计算器:text/html:echo “%s”|bc -l -q

        长按uweb浏览器底部工具条刷新按钮弹出地址栏功能选择,选择“函数作图”,地址栏内输入函数如sin(x)**5就可显示函数图案。

        - + +
        +
        +
        +
        + +
        +
        +
        - -
        - - - - - -
        - -
        - -
        +
        - +
        - - - - + + + + - \ No newline at end of file + + + + + + + + + + diff --git a/2018/12/09/hosts/index.html b/2018/12/09/hosts/index.html index e708378..e248e89 100644 --- a/2018/12/09/hosts/index.html +++ b/2018/12/09/hosts/index.html @@ -1,182 +1,188 @@ - + - - + + + + + + + - - 利用超级hosts文件加速访问国外网站 | uWeb - - - - - - - - - - - - - - - - - - - - + + + 利用超级hosts文件加速访问国外网站 - undefined + + + + + + + + + + - - -
        -
        - -
        -
        - -
        - - -
        - - -

        - 利用超级hosts文件加速访问国外网站 -

        - -
        + + + + +
        + +
        + +
        -
        - +
        + + + + +
        +
        +
        + + + search +
        +
        + +
        +
        +
        +
        + +
        +
        + +
        + + + + +
        +
        + 利用超级hosts文件加速访问国外网站 +
        + + +

        不少国外网站本身虽可访问,但由于网站需要下载google,
        facebook等屏蔽网址的资源而导致无法访问。超级hosts文件可屏蔽文件中域名的一切子域名、孙域名、……,从而主动屏蔽这些网址,最终允许浏览器快速访问合法网站。

        使用Android端uweb浏览器
        /sdcard/uweb/hosts内容如下:

        googleadservices.com

        googlesyndication.com

        adsense.com

        google.com

        google-analytics.com

        googletagservices.com

        twitter.com

        facebook.com

        fbcdn.net

        - + +
        +
        +
        +
        + +
        +
        +
        - -
        - - - - - -
        - -
        - -
        +
        - +
        - - - - + + + + - \ No newline at end of file + + + + + + + + + + diff --git a/2018/12/09/search/index.html b/2018/12/09/search/index.html index 69ea960..8496f36 100644 --- a/2018/12/09/search/index.html +++ b/2018/12/09/search/index.html @@ -1,179 +1,189 @@ - + - - + + + + + + + - - 浏览器多搜索引擎一键直达 | uWeb - - - - - - - - - - - - - - - - - - - - + + + 浏览器多搜索引擎一键直达 - undefined + + + + + + + + + + - - -
        -
        - -
        -
        - -
        - - -
        - - -

        - 浏览器多搜索引擎一键直达 -

        - -
        + + + + +
        + +
        + +
        -
        - +
        + + + + +
        +
        +
        + + + search +
        +
        + +
        +
        +
        +
        + +
        +
        + +
        + + + + +
        +
        + 浏览器多搜索引擎一键直达 +
        + + +

        使用Android端uweb浏览器

        推荐引擎(将下面文本添加到/sdcard/uweb/searchurl.txt中):
        化学品:http://www.basechem.org/search?q=
        大百科全书:http://h.bkzx.cn/search?sublibId=2&query=
        柯林斯双解:http://www.iciba.com/
        柯林斯汉英大词典:https://www.hjdict.com/w/
        剑桥双解:https://dictionary.cambridge.org/dictionary/english-chinese-simplified/
        现代日汉双解:https://dict.hjenglish.com/jp/jc/
        wolfram:https://www.wolframalpha.com/input/?i=
        duck:https://duckduckgo.com/?q=
        wiki:https://en.wikipedia.org/wiki/
        git:https://github.com/search?type=Repositories&q=
        man:http://man.cx/
        code:http://searchcode.com/?q=
        牛津搭配:http://www.freecollocation.com/search?word=
        chem:https://www.ncbi.nlm.nih.gov/pccompound?term=
        googledict:http://googledictionary.freecollocation.com/meaning?word=

        其中中国大百科全书注册登录后才可免费查阅。更多引擎可参看:
        https://www.pdawiki.com/forum/thread-28557-1-1.html?x=4030(需免费注册才可查看,正与站长协商开放权限)
        https://github.com/Dictionaryphile/All_Dictionaries

        - + +
        +
        +
        +
        + +
        +
        +
        - -
        - - - - - -
        - -
        - -
        +
        - +
        - - - - + + + + - \ No newline at end of file + + + + + + + + + + diff --git a/archives/2018/12/index.html b/archives/2018/12/index.html index f567303..6cc3366 100644 --- a/archives/2018/12/index.html +++ b/archives/2018/12/index.html @@ -1,218 +1,231 @@ - + - - + + + + + + + - - Archives: 2018/12 | uWeb - - - - - - - - - - - - - - - - + + + + + + + + + + + + + - + -
        -
        - -
        -
        - - + + + +
        + +
        + +
        - - - -
        -
        - 2018 +
        + +
        - - - -
        - -
        - - - -
        -
        + + + - - - + + + + - \ No newline at end of file + + + + + + + + + + diff --git a/archives/2018/index.html b/archives/2018/index.html index f02ea6e..6cc3366 100644 --- a/archives/2018/index.html +++ b/archives/2018/index.html @@ -1,218 +1,231 @@ - + - - + + + + + + + - - Archives: 2018 | uWeb - - - - - - - - - - - - - - - - + + + + + + + + + + + + + - + -
        -
        - -
        -
        - - + + + +
        + +
        + +
        - - - -
        -
        - 2018 +
        + +
        - - - -
        - -
        - - - -
        -
        + + + - - - + + + + - \ No newline at end of file + + + + + + + + + + diff --git a/archives/index.html b/archives/index.html index 294b5d7..6cc3366 100644 --- a/archives/index.html +++ b/archives/index.html @@ -1,218 +1,231 @@ - + - - + + + + + + + - - Archives | uWeb - - - - - - - - - - - - - - - - + + + + + + + + + + + + + - + -
        -
        - -
        -
        - - + + + +
        + +
        + +
        - - - -
        -
        - 2018 +
        + +
        - - - -
        - -
        - - - -
        -
        + + + - - - + + + + - \ No newline at end of file + + + + + + + + + + diff --git a/css/aircloud.css b/css/aircloud.css new file mode 100644 index 0000000..b447c84 --- /dev/null +++ b/css/aircloud.css @@ -0,0 +1,1208 @@ +/*varibles*/ +* { + font-family: "italic", Helvetica, Arial, "Heiti SC", "Microsoft YaHei"; +} +body, +html { + margin: 0; + padding: 0; +} +body { + margin-left: calc(100vw - 100%) !important; +} +.red { + color: red; +} +.hide { + display: none !important; +} +.show-block { + display: block !important; +} +.show-block { + animation: showBlock 0.4s forwards; + display: block !important; +} +@keyframes showBlock { + from { + opacity: 0; + transform: translateY(-100%); + } + to { + opacity: 1; + transform: translateY(0); + } +} +.hide-block { + display: block !important; + animation: hideBlock 0.4s forwards; + opacity: 1; + transform: translateY(0); +} +@keyframes hideBlock { + from { + opacity: 1; + transform: translateY(0); + } + to { + opacity: 0; + transform: translateY(-100%); + display: none; + } +} +.show-flex-fade { + animation: showFade 0.4s forwards; + display: flex !important; +} +.hide-flex-fade { + animation: hideFade 0.4s forwards; +} +@keyframes showFade { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes hideFade { + from { + opacity: 1; + } + to { + opacity: 0; + display: none !important; + } +} +.no-indent { + text-indent: 0 !important; +} +.no-indent p, +.no-indent h1, +.no-indent h2, +.no-indent h3, +.no-indent h4, +.no-indent h5, +.no-indent h6, +.no-indent ul, +.no-indent ol { + text-indent: 0 !important; +} +.nav { + position: relative; + padding-top: 50px; + color: #333333; + width: 100%; + display: flex; + flex-direction: column; + align-items: center; +} +.nav .avatar-name { + display: flex; + flex-direction: column; + align-items: center; + border-bottom: 1px solid #979797; +} +.nav .avatar-name .avatar { + width: 120px; + height: 120px; + padding: 10px; + box-sizing: border-box; +} +.nav .avatar-name .avatar img { + width: 100px; + height: 100px; +} +.nav .avatar-name .name { + margin-top: 10px; + margin-bottom: 20px; +} +.nav .avatar-name .name i { + font-size: 16px; + font-family: "italic" !important; + font-weight: 300; + color: #666666; +} +.nav .contents ul { + width: 100%; + padding-left: 0; + margin-top: 25px; + margin-bottom: 25px; +} +.nav .contents ul li, +.nav .contents ul li a { + text-decoration: none; + font-size: 15px; + margin: 20px auto; + padding-left: 0; + list-style: none; +} +.nav .contents ul li i, +.nav .contents ul li a i { + cursor: pointer; + color: #999999; + margin-right: 5px; +} +.nav .contents ul li span, +.nav .contents ul li a span { + cursor: pointer; + color: #999999; +} +.nav .contents ul li.active span, +.nav .contents ul li.active i { + color: #4a4a4a; +} +.nav .contents ul li:hover span, +.nav .contents ul li:hover i { + color: #4a4a4a; +} +.site-nav-toggle { + display: none; +} +.site-nav-toggle button { + outline: none; + margin-top: 2px; + padding: 9px 10px; + background: transparent; + border: none; + user-select: none; +} +.site-nav-toggle button .btn-bar { + display: block; + width: 22px; + height: 2px; + background: #666666; + border-radius: 1px; +} +.site-nav-toggle button .btn-bar + .btn-bar { + margin-top: 4px; +} +.search-field { + overflow: hidden; + display: none; + position: fixed; + top: 0; + bottom: 0; + z-index: 3; + left: 0; + right: 0; + width: 100vw; + height: 100vh; + background-color: rgba(0, 0, 0, 0.3); + align-items: center; + flex-direction: column; +} +.search-field .search-container { + width: 40vw; + min-width: 500px; + height: 70vh; + margin-top: 15vh; + background-color: white; +} +.search-field .search-container .search-input { + width: 100%; + display: flex; + align-items: center; + padding-top: 10px; +} +.search-field .search-container .search-input span { + width: 60px; + color: #999999; + line-height: 30px; + text-align: center; +} +.search-field .search-container .search-input span:nth-child(1) { + width: 40px; +} +.search-field .search-container .search-input #begin-search { + cursor: pointer; +} +.search-field .search-container .search-input #begin-search:hover { + color: #4a4a4a; +} +.search-field .search-container .search-input input { + flex: 1; + background-color: #f3f4f7; + border: 1px solid #cccccc; + height: 30px; + font-size: 18px; + color: #4a4a4a; + box-sizing: border-box; + font-weight: 300; + padding-left: 5px; + padding-right: 5px; +} +.search-field .search-result-container { + height: calc(70vh - 50px); + overflow-y: scroll; + overflow-x: hidden; +} +.search-field .search-result-container::-webkit-scrollbar { + width: 4px; +} +.search-field .search-result-container .no-search-result { + width: 100%; + height: 200px; + text-align: center; + padding-top: 100px; + color: #999999; + font-size: 16px; +} +.search-field .search-result-container::-webkit-scrollbar-thumb { + background-color: #c3c4c7; + -webkit-border-radius: 2px; + border-radius: 2px; +} +.search-field .search-result-container ul { + margin-top: 10px; + width: calc(100% - 25px); + padding-left: 10px; +} +.search-field .search-result-container ul li { + margin-bottom: 15px; + list-style: none; +} +.search-field .search-result-container ul li a { + text-decoration: none; + cursor: pointer; + font-size: 16px; + color: #4a4a4a; + font-weight: 300; + padding-bottom: 5px; +} +.search-field .search-result-container ul li ul { + padding-left: 10px; +} +.search-field .search-result-container ul li ul li { + list-style: none; + color: #666666; + font-weight: 300; + font-size: 13px; +} +@media screen and (max-width: 680px) { + .search-field .search-container { + min-width: 0; + width: 100%; + height: 100%; + margin: 0; + } + .search-field .search-result-container { + height: calc(100vh - 50px); + } + .nav { + margin-top: 50px; + position: relative; + top: 0; + width: 100%; + } + .nav .avatar-name { + border-bottom: none; + } + .nav .contents { + display: none; + position: fixed; + left: 0; + top: 40px; + background-color: white; + width: 100%; + border-bottom: 1px solid #CCCCCC; + border-top: 1px solid #CCCCCC; + } + .nav .contents ul { + padding-left: 30px; + } + .site-nav-toggle { + height: 40px; + box-sizing: border-box; + display: block; + position: fixed; + width: 100%; + padding-top: 2px; + padding-left: 20px; + z-index: 2; + background-color: white; + } +} +.post-preview { + width: 100%; + height: max-content; + margin-bottom: 10px; + box-sizing: border-box; + display: flex; + flex-direction: row; +} +.post-preview .post-time { + font-size: 17px; + color: #999999; + width: 125px; + font-weight: 300; + line-height: 24px; +} +.post-preview .post-info { + flex: 1; +} +.post-preview .post-info a { + cursor: pointer; + text-decoration: none; +} +.post-preview .post-info a h3 { + line-height: 24px; + cursor: pointer; + margin-top: 0; + margin-bottom: 5px; + color: #101010; + font-size: 18px; + font-weight: 300; + transition: color 0.4s; +} +.post-preview .post-info a h3:hover { + color: #4990E2; +} +.post-preview .post-info p { + margin-top: 0; +} +.post-preview .post-info p span, +.post-preview .post-info p a { + font-weight: 300; + color: #999999; + font-size: 14px; + text-decoration: none; +} +.post-preview-container { + min-height: 420px; +} +.pager { + width: 100%; + height: 40px; + padding-left: 0; + display: flex; +} +.pager .previous { + flex: 1; + display: flex; + flex-direction: row; + cursor: pointer; +} +.pager .next { + flex: 1; + display: flex; + flex-direction: row-reverse; + cursor: pointer; +} +.pager .previous a, +.pager .next a { + box-sizing: border-box; + cursor: pointer; + transition: color 0.4s, background-color 0.4s; + border: 1px solid #999999; + line-height: 40px; + width: 150px; + height: 40px; + font-size: 18px; + color: #999999; + text-align: center; + text-decoration: none; +} +.pager .previous a:hover, +.pager .next a:hover { + color: white; + cursor: pointer; + background-color: #666666; +} +@media screen and (max-width: 680px) { + .post-preview-container { + min-height: 0 !important; + } + .post-preview { + width: 100%; + height: max-content; + margin-bottom: 10px; + box-sizing: border-box; + display: flex; + flex-direction: column; + padding-left: 10px; + padding-right: 10px; + border-bottom: 1px solid #EEEEEE; + } + .post-preview .post-time { + font-size: 11px; + color: #999999; + width: 125px; + font-weight: 300; + line-height: 20px; + font-style: oblique; + } + .post-preview .post-info { + flex: 1; + } + .post-preview .post-info a { + cursor: pointer; + text-decoration: none; + } + .post-preview .post-info a h3 { + line-height: 20px; + cursor: pointer; + margin-top: 0; + margin-bottom: 5px; + color: #101010; + font-size: 15px; + font-weight: 300; + } + .post-preview .post-info p { + margin-top: 0; + } + .post-preview .post-info p span, + .post-preview .post-info p a { + font-weight: 300; + color: #999999; + font-size: 12px; + text-decoration: none; + } + .pager { + width: 100%; + height: 40px; + padding-left: 10px; + padding-right: 10px; + display: flex; + } + .pager .previous { + flex: 1; + display: flex; + flex-direction: row; + cursor: pointer; + } + .pager .next { + flex: 1; + display: flex; + flex-direction: row-reverse; + cursor: pointer; + } + .pager .previous a, + .pager .next a { + box-sizing: border-box; + cursor: pointer; + transition: color 0.4s, background-color 0.4s; + border: 1px solid #999999; + line-height: 30px; + width: 120px; + height: 30px; + font-size: 14px; + color: #999999; + text-align: center; + text-decoration: none; + } + .pager .previous a:hover, + .pager .next a:hover { + color: white; + cursor: pointer; + background-color: #666666; + } +} +.tags { + line-height: 30px; + margin-bottom: 25px; +} +.tags a { + text-decoration: none; + color: #999999; + margin-right: 15px; +} +.tags a:hover { + color: #4a4a4a; +} +.tags a::before { + content: "#"; +} +.one-tag-list { + margin-bottom: 25px; +} +.one-tag-list .fa-tag { + margin-bottom: 15px; + display: block; + color: #999999; +} +.one-tag-list .post-preview { + padding-left: 2em; +} +.one-tag-list .post-preview a { + cursor: pointer; + text-decoration: none; +} +.one-tag-list .post-preview a .post-title { + margin-bottom: 5px; + line-height: 20px; + cursor: pointer; + margin-top: 0; + color: #101010; + font-size: 18px; + font-weight: 300; + transition: color 0.4s; +} +.one-tag-list .post-preview a .post-title:hover { + color: #4990E2; +} +@media screen and (max-width: 680px) { + .one-tag-list { + margin-bottom: 25px; + } + .one-tag-list .fa-tag { + margin-bottom: 15px; + display: block; + color: #999999; + } + .one-tag-list .post-preview { + padding-left: 2em; + } + .one-tag-list .post-preview a { + cursor: pointer; + text-decoration: none; + } + .one-tag-list .post-preview a .post-title { + font-size: 14px; + font-weight: 300; + text-decoration: none; + line-height: 20px; + color: #4a4a4a; + margin-bottom: 5px; + cursor: pointer; + margin-top: 0; + transition: color 0.4s; + } + .one-tag-list .post-preview a .post-title:hover { + color: #4990E2; + } +} +.post-container { + width: 100%; + height: max-content; + display: flex; + flex-direction: column; +} +.post-container .post-title { + width: 100%; + text-align: center; + line-height: 24px; + margin-top: 0; + margin-bottom: 5px; + color: #101010; + font-size: 20px; + font-weight: 300; +} +.post-container .post-meta { + text-align: center; + margin-top: 0; + margin-bottom: 20px; +} +.post-container .post-meta span, +.post-container .post-meta a { + font-weight: 300; + color: #999999; + font-size: 13px; + text-decoration: none; +} +.post-container .post-meta .attr { + margin-right: 5px; + margin-left: 5px; +} +.post-content { + line-height: 20px; + font-size: 15px; + text-indent: 2em; + color: #333333; + font-weight: 300; +} +.post-content blockquote { + border-top: 1px solid #cccccc; + border-bottom: 1px solid #cccccc; + margin-left: 2em; + margin-right: 2em; + padding-left: 0; + padding-right: 0; +} +.post-content blockquote p { + margin-top: 10px; + margin-bottom: 10px; + color: #666666; +} +.post-content a { + text-decoration: none; + color: #4990E2; +} +.post-content p { + color: #404040; + font-size: 14px; + line-height: 30px; + text-indent: 2em; + letter-spacing: 1px; +} +.post-content p img { + width: 80%; +} +.post-content ul, +.post-content ol { + padding-left: 2em; +} +.post-content ul li, +.post-content ol li { + list-style: none; + color: #404040; + font-size: 14px; + line-height: 30px; + text-indent: 2em; + letter-spacing: 1px; + margin-bottom: 5px; + margin-top: 5px; +} +.post-content ul li:before, +.post-content ol li:before { + content: '• '; +} +.post-content pre { + text-indent: 0; + padding: 10px; +} +.post-content pre code { + color: white; + line-height: 175%; +} +.post-content h1 { + color: #333333; + margin-top: 20px; + margin-bottom: 20px; +} +.post-content h2 { + color: #333333; + margin-top: 20px; + margin-bottom: 20px; +} +.post-content h3 { + color: #333333; + margin-top: 20px; + margin-bottom: 20px; +} +.post-content h4 { + color: #333333; + margin-top: 20px; + margin-bottom: 20px; +} +.post-content h5 { + color: #333333; + margin-top: 20px; + margin-bottom: 20px; +} +.post-content h6 { + color: #333333; + margin-top: 20px; + margin-bottom: 20px; +} +#comment-container { + text-indent: 0; +} +#lv-container { + text-indent: 0; +} +.post-content li p { + display: inline; +} +.index-about { + text-align: center; + width: 100%; + margin-top: 45px; + margin-bottom: 40px; + opacity: 0; + animation: showBlock 1.6s forwards; +} +.index-about i { + font-size: 15px; + font-family: "italic" !important; + font-weight: 300; + color: #444444; +} +.index-about-mobile { + display: none; +} +.index-container { + justify-content: center; + height: max-content; + position: relative; + width: 1024px; + margin: auto; + display: flex; + flex-direction: row; + background-color: white; +} +.index-container .index-left { + width: 240px; +} +.index-container .index-middle { + max-width: 784px; + flex: 1; +} +@media screen and (max-width: 1180px) { + .index-container { + left: 0; + width: 100%; + box-sizing: border-box; + margin: auto; + padding: 0 40px 0 10px; + display: flex; + flex-direction: row; + } + .index-container .index-left { + width: 180px; + } + .index-container .index-middle { + flex: 1; + max-width: calc(100% - 180px); + } +} +@media screen and (max-width: 680px) { + .index-container { + width: 100%; + box-sizing: border-box; + margin: auto; + display: flex; + flex-direction: column; + padding: 0 25px 0 25px; + min-height: 0; + } + .index-container .index-left { + width: 100%; + } + .index-container .index-middle { + max-width: 100%; + flex: 1; + } + .index-about { + display: none; + } + .index-about-mobile { + display: block; + text-align: center; + width: 100%; + margin-top: 0; + margin-bottom: 40px; + } + .index-about-mobile i { + font-size: 15px; + font-family: "italic" !important; + font-weight: 300; + color: #444444; + } +} +.donate-container { + width: 100%; + display: flex; + align-items: center; + flex-direction: column; +} +.donate-container .donate-button { + margin-bottom: 10px; + text-align: center; + display: flex; + align-items: center; + flex-direction: column; +} +.donate-container .donate-button button { + border: none; + cursor: pointer; + box-shadow: none; + outline: none; + border-radius: 6px; + width: 60px; + height: 24px; + text-align: center; + color: white; + background-color: orange; +} +.donate-container .donate-button button:active { + background-color: darkorange; +} +.donate-container .donate-img-container { + display: flex; + align-items: center; + flex-direction: column; +} +.donate-container .donate-img-container img { + max-width: 400px; + max-height: 360px; +} +.donate-container .donate-img-container p { + text-align: center; + font-size: 14px; + color: #999999; +} +@media screen and (max-width: 680px) { + .donate-container .donate-img-container img { + max-width: 75vw; + max-height: 240px; + } + .donate-container .donate-img-container p { + text-align: center; + font-size: 14px; + color: #999999; + } +} +.archives-container .one-tag-list .listing-seperator { + font-size: 18px; + color: #999999; +} +.archives-container .one-tag-list ul { + list-style: none; +} +.archives-container .one-tag-list ul li { + display: flex; + align-items: center; + flex-direction: row; + margin-bottom: 10px; +} +.archives-container .one-tag-list ul li span { + color: #999999; + margin-right: 15px; + min-width: 45px; +} +.archives-container .one-tag-list ul li a { + text-decoration: none; + line-height: 20px; + color: #4a4a4a; +} +.archives-container .one-tag-list ul li a span { + color: #4a4a4a; + transition: color 0.4s; +} +.archives-container .one-tag-list ul li a span:hover { + color: #4990E2; +} +@media screen and (max-width: 680px) { + .archives-container .one-tag-list .listing-seperator { + font-size: 18px; + color: #999999; + } + .archives-container .one-tag-list ul { + list-style: none; + padding-left: 1em; + } + .archives-container .one-tag-list ul li { + display: flex; + align-items: center; + flex-direction: row; + margin-bottom: 10px; + } + .archives-container .one-tag-list ul li span { + color: #999999; + margin-right: 15px; + min-width: 45px; + font-size: 14px; + } + .archives-container .one-tag-list ul li i { + font-size: 12px; + } + .archives-container .one-tag-list ul li a { + font-size: 14px; + font-weight: 300; + text-decoration: none; + line-height: 20px; + color: #4a4a4a; + } + .archives-container .one-tag-list ul li a span { + color: #4a4a4a; + } +} +pre, +.highlight { + overflow: auto; + margin: 20px 0; + padding: 0; + font-size: 13px; + color: #4d4d4c; + background: #f7f7f7; + line-height: 1.6; +} +pre, +code { + font-family: consolas, Menlo, "PingFang SC", "Microsoft YaHei", monospace; +} +code { + padding: 2px 4px; + word-wrap: break-word; + color: #555; + background: #eee; + border-radius: 3px; + font-size: 13px; +} +pre { + padding: 10px; +} +pre code { + padding: 0; + color: #4d4d4c; + background: none; + text-shadow: none; +} +.highlight { + border-radius: 1px; +} +.highlight pre { + border: none; + margin: 0; + padding: 10px 0; +} +.highlight table { + margin: 0; + width: auto; + border: none; +} +.highlight td { + border: none; + padding: 0; +} +.highlight figcaption { + font-size: 1em; + color: #4d4d4c; + line-height: 1em; + margin-bottom: 1em; +} +.highlight figcaption a { + float: right; + color: #4d4d4c; +} +.highlight figcaption a:hover { + border-bottom-color: #4d4d4c; +} +.highlight .gutter pre { + padding-left: 10px; + padding-right: 10px; + color: #869194; + text-align: right; + background-color: #eff2f3; +} +.highlight .code pre { + width: 100%; + padding-left: 10px; + padding-right: 10px; + background-color: #f7f7f7; +} +.highlight .line { + height: 20px; +} +.gutter { + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.gist table { + width: auto; +} +.gist table td { + border: none; +} +pre .deletion { + background: #fdd; +} +pre .addition { + background: #dfd; +} +pre .meta { + color: #8959a8; +} +pre .comment { + color: #8e908c; +} +pre .variable, +pre .attribute, +pre .tag, +pre .regexp, +pre .ruby .constant, +pre .xml .tag .title, +pre .xml .pi, +pre .xml .doctype, +pre .html .doctype, +pre .css .id, +pre .css .class, +pre .css .pseudo { + color: #c82829; +} +pre .number, +pre .preprocessor, +pre .built_in, +pre .literal, +pre .params, +pre .constant, +pre .command { + color: #f5871f; +} +pre .ruby .class .title, +pre .css .rules .attribute, +pre .string, +pre .value, +pre .inheritance, +pre .header, +pre .ruby .symbol, +pre .xml .cdata, +pre .special, +pre .number, +pre .formula { + color: #718c00; +} +pre .title, +pre .css .hexcolor { + color: #3e999f; +} +pre .function, +pre .python .decorator, +pre .python .title, +pre .ruby .function .title, +pre .ruby .title .keyword, +pre .perl .sub, +pre .javascript .title, +pre .coffeescript .title { + color: #4271ae; +} +pre .keyword, +pre .javascript .function { + color: #8959a8; +} +.footer { + width: 100%; + align-items: center; + display: flex; + flex-direction: column; + color: #979797; + margin-bottom: 10px; +} +.footer p { + font-family: "Montserrat", "Helvetica Neue", "Hiragino Sans GB", "LiHei Pro", Arial, sans-serif; + font-size: 14px; + margin-top: 5px; + margin-bottom: 0; + font-weight: 300; +} +.footer p a { + font-weight: 300; + font-family: "Montserrat", "Helvetica Neue", "Hiragino Sans GB", "LiHei Pro", Arial, sans-serif; + cursor: pointer; + color: #333333; +} +.footer p span a { + font-weight: 300; + font-family: "Montserrat", "Helvetica Neue", "Hiragino Sans GB", "LiHei Pro", Arial, sans-serif; + cursor: pointer; + color: #979797; + text-decoration: none; +} +.footer p span a:hover { + color: #333333; +} +.list-inline.text-center { + color: #444444; + font-size: 20px; + padding-left: 0; + margin-bottom: 0; +} +.list-inline.text-center li { + display: inline-block; + margin: 0 2px; + background-color: #979797; + height: 24px; + width: 24px; + border-radius: 12px; + text-align: center; +} +.list-inline.text-center li a { + text-decoration: none; +} +.list-inline.text-center li a span i { + line-height: 20px; + color: white; +} +.list-inline.text-center li:hover { + background-color: #333333; +} +@media screen and (max-width: 680px) { + .footer { + box-sizing: border-box; + padding-left: 20px; + padding-right: 20px; + } + .footer p { + font-family: "Montserrat", "Helvetica Neue", "Hiragino Sans GB", "LiHei Pro", Arial, sans-serif; + font-size: 11px; + margin-top: 5px; + margin-bottom: 0; + font-weight: 300; + } + .footer p span a { + font-size: 11px; + font-weight: 300; + font-family: "Montserrat", "Helvetica Neue", "Hiragino Sans GB", "LiHei Pro", Arial, sans-serif; + cursor: pointer; + color: #979797; + text-decoration: none; + } + .footer p span a:hover { + color: #333333; + } +} +.toc-article { + width: 240px; +} +.toc-article ol { + padding-left: 10px; + cursor: pointer; + font-size: 0; +} +.toc-article li { + font-size: 0; + box-sizing: border-box; + border-left: 2px solid #cccccc; + list-style: none; + padding-left: 10px; +} +.toc-article li a { + display: block; + line-height: 20px; + margin-bottom: 10px; + text-decoration: none; + color: #999999; + font-size: 14px; +} +.toc-article li a span { + word-break: break-all; +} +.toc-article li.active { + border-left: 2px solid #4990E2; +} +.toc-article li.active > a { + color: #4990E2; +} +.toc-article li:hover { + border-left: 2px solid #4990E2; +} +.toc-article li:hover > a { + color: #4990E2; +} +.toc-article > ol > li { + border-left: none !important; +} +.toc-fixed { + position: fixed; + top: 10px; + width: 240px; +} +.toc-fixed::-webkit-scrollbar { + width: 0; +} +.toc-fixed::-webkit-scrollbar-thumb { + background-color: #ffffff; + -webkit-border-radius: 4px; + border-radius: 2px; +} +@media screen and (max-width: 1180px) { + .toc-article { + display: none; + } +} +.gitment-comment p { + text-indent: 0; +} diff --git a/css/aircloud.less b/css/aircloud.less new file mode 100644 index 0000000..c25ceee --- /dev/null +++ b/css/aircloud.less @@ -0,0 +1,21 @@ +@import "../_less/variables"; +@import "../_less/common"; +@import "../_less/nav"; +@import "../_less/about"; +@import "../_less/index"; +@import "../_less/tag"; +@import "../_less/post"; +@import "../_less/page"; +@import "../_less/layout"; + +@import "../_less/donate"; + +@import "../_less/archive"; + +@import "../_less/hightlight"; +// _partial: +@import "../_less/_partial/footer"; + +@import "../_less/toc"; + +@import "../_less/gitment"; diff --git a/css/fonts/FontAwesome.otf b/css/fonts/FontAwesome.otf deleted file mode 100644 index 8b0f54e47e1d356dcf1496942a50e228e0f1ee14..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62856 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