├── img ├── cover.jpg ├── kongou.png ├── icon-search.png └── icon-search@2x.png ├── screenshot.png ├── README.md ├── footer.php ├── 404.php ├── page.php ├── post.php ├── archive.php ├── index.php ├── header.php ├── comments.php ├── grid.css ├── functions.php ├── sidebar.php ├── ero.js ├── LICENSE └── style.css /img/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Archeb/Ero/HEAD/img/cover.jpg -------------------------------------------------------------------------------- /img/kongou.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Archeb/Ero/HEAD/img/kongou.png -------------------------------------------------------------------------------- /screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Archeb/Ero/HEAD/screenshot.png -------------------------------------------------------------------------------- /img/icon-search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Archeb/Ero/HEAD/img/icon-search.png -------------------------------------------------------------------------------- /img/icon-search@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Archeb/Ero/HEAD/img/icon-search@2x.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Ero 2 | Ero 是一套基于 Typecho 默认皮肤修改的萌系双栏主题 3 | 4 | ### 安装 5 | 解压到/usr/themes下即可 6 | 7 | ### 功能说明 8 | 大部分功能请参考 https://github.com/Archeb/LightWhite 9 | 10 | ### 预览 11 | https://qwq.moe/ 12 | 13 | ### 更新日志 14 | 15 | - 1.1.1 16 | 更新了支持使用qq头像进行评论的功能,感谢局长提供的思路 17 | 18 | ### 许可证 19 | GPL 2.0 20 | 21 | (其实想用MIT,然后看了下这个主题作为typecho自带主题应当使用和typecho相同许可证) 22 | -------------------------------------------------------------------------------- /footer.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 12 | 13 | footer(); ?> 14 | 15 | 16 | -------------------------------------------------------------------------------- /404.php: -------------------------------------------------------------------------------- 1 | 2 | need('header.php'); ?> 3 | 4 |
5 | 6 |
7 |

404 -

8 |

9 |
10 |

11 |

12 |
13 |
14 | 15 |
16 | need('footer.php'); ?> 17 | -------------------------------------------------------------------------------- /page.php: -------------------------------------------------------------------------------- 1 | 2 | need('header.php'); ?> 3 | 4 |
5 |
6 | 7 | fields->previewImage && $this->fields->previewImage!==""): ?> 8 |
9 |
10 |
title(); ?>
11 |
12 | 13 |

14 | 15 |
16 | content(); ?> 17 |
18 |
19 | need('comments.php'); ?> 20 |
21 | 22 | need('sidebar.php'); ?> 23 | need('footer.php'); ?> 24 | -------------------------------------------------------------------------------- /post.php: -------------------------------------------------------------------------------- 1 | 2 | need('header.php'); ?> 3 | 4 |
5 |
6 |
7 | 10 | 17 |
18 | fields->previewImage && $this->fields->previewImage!==""): ?> 19 |
20 |
21 |
title(); ?>
22 |
23 | 24 |

25 | 26 | 31 |
32 | content(); ?> 33 |
34 |

tags(', ', true, 'none'); ?>

35 |
36 | 37 | need('comments.php'); ?> 38 | 39 | 43 |
44 | 45 | need('sidebar.php'); ?> 46 | need('footer.php'); ?> 47 | -------------------------------------------------------------------------------- /archive.php: -------------------------------------------------------------------------------- 1 | 2 | need('header.php'); ?> 3 | 4 |
5 |

archiveTitle(array( 6 | 'category' => _t('分类 %s 下的文章'), 7 | 'search' => _t('包含关键字 %s 的文章'), 8 | 'tag' => _t('标签 %s 下的文章'), 9 | 'author' => _t('%s 发布的文章') 10 | ), '', ''); ?>

11 | have()): ?> 12 | next()): ?> 13 |
14 |
15 | 18 | 25 |
26 | fields->previewImage && $this->fields->previewImage!==""): ?> 27 |
28 |
29 |
title(); ?>
30 |
31 | 32 |

33 | 34 | 40 |
41 | content('- 阅读剩余部分 -'); ?> 42 |
43 |
44 | 45 | 46 |
47 |

48 |
49 | 50 | 51 | pageNav('« 前一页', '后一页 »'); ?> 52 |
53 | 54 | need('sidebar.php'); ?> 55 | need('footer.php'); ?> 56 | -------------------------------------------------------------------------------- /index.php: -------------------------------------------------------------------------------- 1 | need('header.php'); 13 | ?> 14 | options->announcement): ?> 15 |
16 | 17 |   options->announcement() ?>
18 | 19 |
20 | next()): ?> 21 |
22 |
23 | 26 | 33 |
34 | fields->previewImage && $this->fields->previewImage!==""): ?> 35 |
36 |
37 |
title(); ?>
38 |
39 | 40 |

41 | 42 | 43 | 49 |
50 | content('- 阅读剩余部分 -'); ?> 51 |
52 |
53 | 54 | 55 | pageNav('« 前一页', '后一页 »'); ?> 56 |
57 | 58 | need('sidebar.php'); ?> 59 | need('footer.php'); ?> 60 | -------------------------------------------------------------------------------- /header.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | <?php $this->archiveTitle(array( 10 | 'category' => _t('分类 %s 下的文章'), 11 | 'search' => _t('包含关键字 %s 的文章'), 12 | 'tag' => _t('标签 %s 下的文章'), 13 | 'author' => _t('%s 发布的文章') 14 | ), '', ' - '); ?><?php $this->options->title(); ?><?php if($this->_currentPage!=1){ echo " 第 " . $this->_currentPage . " 页"; }?> 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 26 | 27 | 28 | 29 | 32 | 33 | 70 |
71 |
72 |
73 | 74 | 75 | 76 | -------------------------------------------------------------------------------- /comments.php: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |
6 |
7 | 8 |   
9 | comments()->to($comments); ?> 10 |
  • 11 | have()): ?> 12 | 13 | listComments(); ?> 14 | 15 | pageNav('« 前一页', '后一页 »'); ?> 16 | 17 | 18 | 19 |
    20 | 21 | allow('comment')): ?> 22 |
    23 |
    24 |
    25 |
    您正在回复给 Poi
    26 | 29 | 30 |
    31 |
    32 | 33 | 34 | 35 | 36 | 37 |
    38 |
    39 |
    40 | user->hasLogin()): ?> 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | options->commentsRequireMail): ?> required /> 52 | 53 | 54 | options->commentsRequireURL): ?> required /> 55 | 56 |
    57 |
    58 | 59 |
     
    60 | 61 | -------------------------------------------------------------------------------- /grid.css: -------------------------------------------------------------------------------- 1 | .container,.row [class*="col-"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}.container{margin-left:auto;margin-right:auto;padding-left:10px;padding-right:10px;}.row{margin-right:-10px;margin-left:-10px;}.row [class*="col-"]{float:left;min-height:1px;padding-right:10px;padding-left:10px;}.row [class*="-push-"],.row [class*="-pull-"]{position:relative;}.col-mb-1{width:8.33333%;}.col-mb-2{width:16.66667%;}.col-mb-3{width:25%;}.col-mb-4{width:33.33333%;}.col-mb-5{width:41.66667%;}.col-mb-6{width:50%;}.col-mb-7{width:58.33333%;}.col-mb-8{width:66.66667%;}.col-mb-9{width:75%;}.col-mb-10{width:83.33333%;}.col-mb-11{width:91.66667%;}.col-mb-12{width:100%;}@media(min-width:768px){.container{max-width:728px;}.col-tb-1{width:8.33333%;}.col-tb-2{width:16.66667%;}.col-tb-3{width:25%;}.col-tb-4{width:33.33333%;}.col-tb-5{width:41.66667%;}.col-tb-6{width:50%;}.col-tb-7{width:58.33333%;}.col-tb-8{width:66.66667%;}.col-tb-9{width:75%;}.col-tb-10{width:83.33333%;}.col-tb-11{width:91.66667%;}.col-tb-12{width:100%;}.col-tb-offset-0{margin-left:0;}.col-tb-offset-1{margin-left:8.33333%;}.col-tb-offset-2{margin-left:16.66667%;}.col-tb-offset-3{margin-left:25%;}.col-tb-offset-4{margin-left:33.33333%;}.col-tb-offset-5{margin-left:41.66667%;}.col-tb-offset-6{margin-left:50%;}.col-tb-offset-7{margin-left:58.33333%;}.col-tb-offset-8{margin-left:66.66667%;}.col-tb-offset-9{margin-left:75%;}.col-tb-offset-10{margin-left:83.33333%;}.col-tb-offset-11{margin-left:91.66667%;}.col-tb-offset-12{margin-left:100%;}.col-tb-pull-0{right:0;}.col-tb-pull-1{right:8.33333%;}.col-tb-pull-2{right:16.66667%;}.col-tb-pull-3{right:25%;}.col-tb-pull-4{right:33.33333%;}.col-tb-pull-5{right:41.66667%;}.col-tb-pull-6{right:50%;}.col-tb-pull-7{right:58.33333%;}.col-tb-pull-8{right:66.66667%;}.col-tb-pull-9{right:75%;}.col-tb-pull-10{right:83.33333%;}.col-tb-pull-11{right:91.66667%;}.col-tb-pull-12{right:100%;}.col-tb-push-0{left:0;}.col-tb-push-1{left:8.33333%;}.col-tb-push-2{left:16.66667%;}.col-tb-push-3{left:25%;}.col-tb-push-4{left:33.33333%;}.col-tb-push-5{left:41.66667%;}.col-tb-push-6{left:50%;}.col-tb-push-7{left:58.33333%;}.col-tb-push-8{left:66.66667%;}.col-tb-push-9{left:75%;}.col-tb-push-10{left:83.33333%;}.col-tb-push-11{left:91.66667%;}.col-tb-push-12{left:100%;}}@media(min-width:992px){.container{max-width:952px;}.col-1{width:8.33333%;}.col-2{width:16.66667%;}.col-3{width:25%;}.col-4{width:33.33333%;}.col-5{width:41.66667%;}.col-6{width:50%;}.col-7{width:58.33333%;}.col-8{width:66.66667%;}.col-9{width:75%;}.col-10{width:83.33333%;}.col-11{width:91.66667%;}.col-12{width:100%;}.col-offset-0{margin-left:0;}.col-offset-1{margin-left:8.33333%;}.col-offset-2{margin-left:16.66667%;}.col-offset-3{margin-left:25%;}.col-offset-4{margin-left:33.33333%;}.col-offset-5{margin-left:41.66667%;}.col-offset-6{margin-left:50%;}.col-offset-7{margin-left:58.33333%;}.col-offset-8{margin-left:66.66667%;}.col-offset-9{margin-left:75%;}.col-offset-10{margin-left:83.33333%;}.col-offset-11{margin-left:91.66667%;}.col-offset-12{margin-left:100%;}.col-pull-0{right:0;}.col-pull-1{right:8.33333%;}.col-pull-2{right:16.66667%;}.col-pull-3{right:25%;}.col-pull-4{right:33.33333%;}.col-pull-5{right:41.66667%;}.col-pull-6{right:50%;}.col-pull-7{right:58.33333%;}.col-pull-8{right:66.66667%;}.col-pull-9{right:75%;}.col-pull-10{right:83.33333%;}.col-pull-11{right:91.66667%;}.col-pull-12{right:100%;}.col-push-0{left:0;}.col-push-1{left:8.33333%;}.col-push-2{left:16.66667%;}.col-push-3{left:25%;}.col-push-4{left:33.33333%;}.col-push-5{left:41.66667%;}.col-push-6{left:50%;}.col-push-7{left:58.33333%;}.col-push-8{left:66.66667%;}.col-push-9{left:75%;}.col-push-10{left:83.33333%;}.col-push-11{left:91.66667%;}.col-push-12{left:100%;}}@media(min-width:1200px){.container{max-width:1160px;}.col-wd-1{width:8.33333%;}.col-wd-2{width:16.66667%;}.col-wd-3{width:25%;}.col-wd-4{width:33.33333%;}.col-wd-5{width:41.66667%;}.col-wd-6{width:50%;}.col-wd-7{width:58.33333%;}.col-wd-8{width:66.66667%;}.col-wd-9{width:75%;}.col-wd-10{width:83.33333%;}.col-wd-11{width:91.66667%;}.col-wd-12{width:100%;}.col-wd-offset-0{margin-left:0;}.col-wd-offset-1{margin-left:8.33333%;}.col-wd-offset-2{margin-left:16.66667%;}.col-wd-offset-3{margin-left:25%;}.col-wd-offset-4{margin-left:33.33333%;}.col-wd-offset-5{margin-left:41.66667%;}.col-wd-offset-6{margin-left:50%;}.col-wd-offset-7{margin-left:58.33333%;}.col-wd-offset-8{margin-left:66.66667%;}.col-wd-offset-9{margin-left:75%;}.col-wd-offset-10{margin-left:83.33333%;}.col-wd-offset-11{margin-left:91.66667%;}.col-wd-offset-12{margin-left:100%;}.col-wd-pull-0{right:0;}.col-wd-pull-1{right:8.33333%;}.col-wd-pull-2{right:16.66667%;}.col-wd-pull-3{right:25%;}.col-wd-pull-4{right:33.33333%;}.col-wd-pull-5{right:41.66667%;}.col-wd-pull-6{right:50%;}.col-wd-pull-7{right:58.33333%;}.col-wd-pull-8{right:66.66667%;}.col-wd-pull-9{right:75%;}.col-wd-pull-10{right:83.33333%;}.col-wd-pull-11{right:91.66667%;}.col-wd-pull-12{right:100%;}.col-wd-push-0{left:0;}.col-wd-push-1{left:8.33333%;}.col-wd-push-2{left:16.66667%;}.col-wd-push-3{left:25%;}.col-wd-push-4{left:33.33333%;}.col-wd-push-5{left:41.66667%;}.col-wd-push-6{left:50%;}.col-wd-push-7{left:58.33333%;}.col-wd-push-8{left:66.66667%;}.col-wd-push-9{left:75%;}.col-wd-push-10{left:83.33333%;}.col-wd-push-11{left:91.66667%;}.col-wd-push-12{left:100%;}}@media(max-width:767px){.kit-hidden-mb{display:none;}}@media(max-width:991px){.kit-hidden-tb{display:none;}}@media(max-width:1199px){.kit-hidden{display:none;}}.clearfix,.row{zoom:1;}.clearfix:before,.row:before,.clearfix:after,.row:after{content:" ";display:table;}.clearfix:after,.row:after{clear:both;} -------------------------------------------------------------------------------- /functions.php: -------------------------------------------------------------------------------- 1 | addInput($announcement); 7 | $sidebarBlock = new Typecho_Widget_Helper_Form_Element_Checkbox('sidebarBlock', 8 | array('ShowRecentPosts' => _t('显示最新文章'), 9 | 'ShowRecentComments' => _t('显示最近回复'), 10 | 'ShowCategory' => _t('显示分类'), 11 | 'ShowArchive' => _t('显示归档'), 12 | 'ShowOther' => _t('显示其它杂项'), 13 | 'ShowApply' => _t('显示应用')), 14 | array('ShowRecentPosts', 'ShowRecentComments', 'ShowCategory', 'ShowArchive', 'ShowOther','ShowApply'), _t('侧边栏显示')); 15 | 16 | $form->addInput($sidebarBlock->multiMode()); 17 | } 18 | 19 | 20 | function themeFields($layout) { 21 | ?> 22 | 27 | addItem($previewImage); 30 | //⑨BIE的魔改 31 | $applyicon = new Typecho_Widget_Helper_Form_Element_Text('applyicon', NULL, NULL, "应用图标", "在此填入一个图片地址以在第二栏显示。"); 32 | $layout->addItem($applyicon); 33 | $applyname = new Typecho_Widget_Helper_Form_Element_Text('applyname', NULL, NULL, "应用标题", "在此填入一串文本地址以在第二栏显示显示应用的名称。"); 34 | $layout->addItem($applyname); 35 | //魔改结束 36 | if($_SERVER['SCRIPT_NAME']=="/admin/write-page.php"){ 37 | $icon = new Typecho_Widget_Helper_Form_Element_Text('icon', NULL, NULL, "图标", "在此填入MDI图标类名,将会显示在导航栏中。类名参考"); 38 | $layout->addItem($icon); 39 | } 40 | } 41 | 42 | 43 | function threadedComments($comments, $options) { 44 | $commentClass = ''; 45 | if ($comments->authorId) { 46 | if ($comments->authorId == $comments->ownerId) { 47 | $commentClass .= ' comment-by-author'; 48 | } else { 49 | $commentClass .= ' comment-by-user'; 50 | } 51 | } 52 | 53 | $commentLevelClass = $comments->levels > 0 ? ' comment-child' : ' comment-parent'; 54 | ?> 55 | 56 |
  • 66 | 96 | children) { ?> 97 |
    98 | threadedComments($options); ?> 99 |
    100 | 101 |
  • 102 | 'year', '个月'=>'month', '周'=>'week', '天'=>'day', 121 | '小时'=>'hour', '分钟'=>'minute', '秒'=>'second' 122 | ); 123 | foreach ( $unitArr as $cn => $u ) 124 | { 125 | if ( $$u > 0 ) 126 | { 127 | $elapse = $$u . $cn; 128 | break; 129 | } 130 | } 131 | return $elapse; 132 | } -------------------------------------------------------------------------------- /sidebar.php: -------------------------------------------------------------------------------- 1 | 2 | 94 | -------------------------------------------------------------------------------- /ero.js: -------------------------------------------------------------------------------- 1 | window.commentMode=0; //0为邮箱Gravatar,1为使用QQ头像 2 | window.TypechoComment={ 3 | reply: function(el,id){ 4 | var replyEl=document.querySelector('.reply-info'); 5 | replyEl.classList.remove('reply-info-closed'); 6 | replyEl.querySelector('#reply-name').innerText=document.getElementById(el).querySelector('.comment-author-name').innerText; 7 | document.getElementById('comment-parent').value=id; 8 | document.documentElement.scrollTo({"behavior": "smooth", "top":replyEl.offsetTop-500}); 9 | }, 10 | 11 | cancelReply: function(){ 12 | var replyEl=document.querySelector('.reply-info'); 13 | replyEl.classList.add('reply-info-closed'); 14 | document.getElementById('comment-parent').value=""; 15 | } 16 | } 17 | 18 | function changeCommentAvatarMode(){ 19 | if(window.commentMode==0){ 20 | document.querySelector('#avatarMode').style.d="path('M3.18,13.54C3.76,12.16 4.57,11.14 5.17,10.92C5.16,10.12 5.31,9.62 5.56,9.22C5.56,9.19 5.5,8.86 5.72,8.45C5.87,4.85 8.21,2 12,2C15.79,2 18.13,4.85 18.28,8.45C18.5,8.86 18.44,9.19 18.44,9.22C18.69,9.62 18.84,10.12 18.83,10.92C19.43,11.14 20.24,12.16 20.82,13.55C21.57,15.31 21.69,17 21.09,17.3C20.68,17.5 20.03,17 19.42,16.12C19.18,17.1 18.58,18 17.73,18.71C18.63,19.04 19.21,19.58 19.21,20.19C19.21,21.19 17.63,22 15.69,22C13.93,22 12.5,21.34 12.21,20.5H11.79C11.5,21.34 10.07,22 8.31,22C6.37,22 4.79,21.19 4.79,20.19C4.79,19.58 5.37,19.04 6.27,18.71C5.42,18 4.82,17.1 4.58,16.12C3.97,17 3.32,17.5 2.91,17.3C2.31,17 2.43,15.31 3.18,13.54Z')"; 21 | document.querySelector('#mail').placeholder="请输入QQ号"; 22 | window.commentMode=1; 23 | }else{ 24 | document.querySelector('#avatarMode').style.d="path('M20,8L12,13L4,8V6L12,11L20,6M20,4H4C2.89,4 2,4.89 2,6V18A2,2 0 0,0 4,20H20A2,2 0 0,0 22,18V6C22,4.89 21.1,4 20,4Z')"; 25 | document.querySelector('#mail').placeholder="←点此使用QQ头像"; 26 | window.commentMode=0; 27 | 28 | } 29 | } 30 | 31 | function parseToDOM(str){ 32 | var div = document.createElement("div"); 33 | if(typeof str == "string") 34 | div.innerHTML = str; 35 | return div.childNodes; 36 | } 37 | 38 | function sendComment(){ 39 | var form=document.querySelector('#comment-form'); 40 | var data = new FormData(form); 41 | if(window.commentMode==1){ 42 | data.set("mail",data.get('mail')+"@qq.com"); 43 | } 44 | fetch(form.action,{credentials:'include',method: "POST",body:data}).then(function(data){return data.text()}).then(function(text){ 45 | if(text.indexOf('Error')!=-1){ 46 | alert(parseToDOM(text)[7].innerText.trim()); 47 | }else{ 48 | var newComment=document.querySelector('#comments>li'); 49 | if(newComment.querySelector('.comment-children')){newComment.removeChild(newComment.querySelector('.comment-children'))}; 50 | newComment.querySelector('.comment-author-name').innerText=data.get('author'); 51 | newComment.querySelector('.avatar').src='https://gravatar.cat.net/avatar/' + data.get('mail').MD5(32) + '?s=55&r=G&d='; 52 | newComment.querySelector('.comment-content').innerHTML='

    ' + data.get('text') + '

    '; 53 | newComment.querySelector('.comment-time').innerText=new Date().toISOString().replace('T',' ').substr(0,new Date().toISOString().replace('T',' ').lastIndexOf(':')); 54 | var comment_list=document.querySelector('.comment-list') 55 | if(!comment_list){ 56 | comment_list=document.createElement('ol'); 57 | comment_list.classList.add('comment-list'); 58 | document.querySelector('#comments').appendChild(comment_list); 59 | } 60 | comment_list.appendChild(newComment); 61 | alert('评论成功'); 62 | } 63 | }); 64 | } 65 | 66 | //MD5 67 | String.prototype.MD5 = function (bit) 68 | { 69 | var sMessage = this; 70 | function RotateLeft(lValue, iShiftBits) { return (lValue<>>(32-iShiftBits)); } 71 | function AddUnsigned(lX,lY) 72 | { 73 | var lX4,lY4,lX8,lY8,lResult; 74 | lX8 = (lX & 0x80000000); 75 | lY8 = (lY & 0x80000000); 76 | lX4 = (lX & 0x40000000); 77 | lY4 = (lY & 0x40000000); 78 | lResult = (lX & 0x3FFFFFFF)+(lY & 0x3FFFFFFF); 79 | if (lX4 & lY4) return (lResult ^ 0x80000000 ^ lX8 ^ lY8); 80 | if (lX4 | lY4) 81 | { 82 | if (lResult & 0x40000000) return (lResult ^ 0xC0000000 ^ lX8 ^ lY8); 83 | else return (lResult ^ 0x40000000 ^ lX8 ^ lY8); 84 | } else return (lResult ^ lX8 ^ lY8); 85 | } 86 | function F(x,y,z) { return (x & y) | ((~x) & z); } 87 | function G(x,y,z) { return (x & z) | (y & (~z)); } 88 | function H(x,y,z) { return (x ^ y ^ z); } 89 | function I(x,y,z) { return (y ^ (x | (~z))); } 90 | function FF(a,b,c,d,x,s,ac) 91 | { 92 | a = AddUnsigned(a, AddUnsigned(AddUnsigned(F(b, c, d), x), ac)); 93 | return AddUnsigned(RotateLeft(a, s), b); 94 | } 95 | function GG(a,b,c,d,x,s,ac) 96 | { 97 | a = AddUnsigned(a, AddUnsigned(AddUnsigned(G(b, c, d), x), ac)); 98 | return AddUnsigned(RotateLeft(a, s), b); 99 | } 100 | function HH(a,b,c,d,x,s,ac) 101 | { 102 | a = AddUnsigned(a, AddUnsigned(AddUnsigned(H(b, c, d), x), ac)); 103 | return AddUnsigned(RotateLeft(a, s), b); 104 | } 105 | function II(a,b,c,d,x,s,ac) 106 | { 107 | a = AddUnsigned(a, AddUnsigned(AddUnsigned(I(b, c, d), x), ac)); 108 | return AddUnsigned(RotateLeft(a, s), b); 109 | } 110 | function ConvertToWordArray(sMessage) 111 | { 112 | var lWordCount; 113 | var lMessageLength = sMessage.length; 114 | var lNumberOfWords_temp1=lMessageLength + 8; 115 | var lNumberOfWords_temp2=(lNumberOfWords_temp1-(lNumberOfWords_temp1 % 64))/64; 116 | var lNumberOfWords = (lNumberOfWords_temp2+1)*16; 117 | var lWordArray=Array(lNumberOfWords-1); 118 | var lBytePosition = 0; 119 | var lByteCount = 0; 120 | while ( lByteCount < lMessageLength ) 121 | { 122 | lWordCount = (lByteCount-(lByteCount % 4))/4; 123 | lBytePosition = (lByteCount % 4)*8; 124 | lWordArray[lWordCount] = (lWordArray[lWordCount] | (sMessage.charCodeAt(lByteCount)<>>29; 132 | return lWordArray; 133 | } 134 | function WordToHex(lValue) 135 | { 136 | var WordToHexValue="",WordToHexValue_temp="",lByte,lCount; 137 | for (lCount = 0;lCount<=3;lCount++) 138 | { 139 | lByte = (lValue>>>(lCount*8)) & 255; 140 | WordToHexValue_temp = "0" + lByte.toString(16); 141 | WordToHexValue = WordToHexValue + WordToHexValue_temp.substr(WordToHexValue_temp.length-2,2); 142 | } 143 | return WordToHexValue; 144 | } 145 | var x=Array(); 146 | var k,AA,BB,CC,DD,a,b,c,d 147 | var S11=7, S12=12, S13=17, S14=22; 148 | var S21=5, S22=9 , S23=14, S24=20; 149 | var S31=4, S32=11, S33=16, S34=23; 150 | var S41=6, S42=10, S43=15, S44=21; 151 | // Steps 1 and 2. Append padding bits and length and convert to words 152 | x = ConvertToWordArray(sMessage); 153 | // Step 3. Initialise 154 | a = 0x67452301; b = 0xEFCDAB89; c = 0x98BADCFE; d = 0x10325476; 155 | // Step 4. Process the message in 16-word blocks 156 | for (k=0;k.pr-container{ 111 | background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.55)); 112 | width:100%; 113 | padding:50px 0 0 0; 114 | } 115 | .index-clear{ 116 | display:inherit!important; 117 | height:inherit!important; 118 | } 119 | #logo { 120 | color: white; 121 | text-shadow: 1px 1px 8px #555; 122 | font-size: 2.5em; 123 | } 124 | 125 | #logo img { 126 | max-height: 64px; 127 | } 128 | 129 | #header .description { 130 | margin: .5em 0 0; 131 | color: #efefef; 132 | } 133 | 134 | #nav-menu { 135 | margin: 15px 0 0; 136 | padding: 0; 137 | } 138 | 139 | #nav-menu a { 140 | display: block; 141 | transition:border-color 0.3s; 142 | color: #efefef; 143 | text-shadow: 1px 1px 8px #000; 144 | padding: 0 20px; 145 | border-bottom: 2px solid transparent; 146 | height: 32px; 147 | line-height: 32px; 148 | float: left; 149 | } 150 | 151 | #nav-menu a:hover,#nav-menu .current { 152 | border-color: white; 153 | color:white; 154 | } 155 | .nav-tools{ 156 | display: flex; 157 | flex-direction: row; 158 | align-items: flex-end; 159 | justify-content: space-between; 160 | } 161 | #search { 162 | position: relative; 163 | margin-top: 15px; 164 | } 165 | 166 | #search input { 167 | outline: none; 168 | border: none; 169 | transition: all 0.3s; 170 | padding: 7px 5px; 171 | font-size:13px; 172 | border-bottom: 1px solid transparent; 173 | background: transparent; 174 | color: white; 175 | } 176 | #search input:hover { 177 | border-color: white; 178 | } 179 | #search input::-moz-placeholder { color: #cfcfcf; } 180 | #search input::-webkit-input-placeholder { color:#cfcfcf; } 181 | #search button { 182 | position: absolute; 183 | right: 4px; 184 | top: 2px; 185 | border: none; 186 | padding: 0; 187 | width: 24px; 188 | height: 24px; 189 | background:transparent; 190 | direction: ltr; 191 | } 192 | 193 | @media(-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi) { 194 | #search button { 195 | background-image: url(img/icon-search@2x.png); 196 | -webkit-background-size: 24px 24px; 197 | -moz-background-size: 24px 24px; 198 | -o-background-size: 24px 24px; 199 | background-size: 24px 24px; 200 | } 201 | } 202 | #main{ 203 | padding-top:20px; 204 | } 205 | .announcement{ 206 | padding: 10px 20px; 207 | background-color: #ff7272; 208 | color: white; 209 | box-shadow: 0 0 15px rgba(0,0,0,0.1); 210 | font-size: 15px; 211 | margin: 20px 10px 0; 212 | display:flex; 213 | align-items: center; 214 | } 215 | article .cover { 216 | height: 400px; 217 | margin:-10px -25px 25px; 218 | overflow: hidden; 219 | } 220 | article .cover .cover-image { 221 | transition: all 0.25s; 222 | border-top-left-radius: 0px; 223 | border-top-right-radius: 0px; 224 | transform: scale(1.02); 225 | background-size: cover; 226 | height: 100%; 227 | width: 100%; 228 | } 229 | article .cover .cover-image:active { 230 | transform: scale(1); 231 | } 232 | article .cover .title { 233 | transform: scale(1); 234 | margin-top: -42px; 235 | padding: 10px 15px; 236 | font-size: 1.4em; 237 | font-weight: normal; 238 | color: white; 239 | white-space: nowrap; 240 | background: linear-gradient(to bottom, transparent, rgba(0, 0, 0, 0.55)); 241 | overflow: hidden; 242 | text-overflow: ellipsis; 243 | text-shadow: 1px 1px 8px #000; 244 | } 245 | .post { 246 | padding: 10px 25px; 247 | box-shadow:0px 0px 15px rgba(0,0,0,0.06); 248 | background-color: white; 249 | margin-bottom: 20px; 250 | border-bottom: 1px solid #EEE; 251 | } 252 | .post:hover .post-side-info{ 253 | opacity:1; 254 | } 255 | 256 | .post-title { 257 | font-size: 1.4em; 258 | margin: -10px -25px 20px; 259 | padding: 15px 25px; 260 | font-weight:normal; 261 | background-color: #ffa8b7; 262 | } 263 | .post-title a{ 264 | color:white; 265 | } 266 | .post-side-info { 267 | position: absolute; 268 | opacity:0; 269 | transition:all 0.3s; 270 | margin-left: -180px; 271 | display: flex; 272 | flex-direction: column; 273 | align-items: center; 274 | } 275 | .post-side-info .panel{ 276 | background-color:white; 277 | z-index: 1; 278 | margin-top: -37px; 279 | padding: 40px 0 0; 280 | text-align: center; 281 | box-shadow: 0px 0px 15px rgba(0,0,0,0.06); 282 | width: 140px; 283 | font-size:13px; 284 | } 285 | .post-side-info .panel .author-name{ 286 | font-size:14px; 287 | } 288 | .post-side-info .panel .item{ 289 | padding:7px 0; 290 | border-bottom:1px dashed #ececec; 291 | display: flex; 292 | justify-content: center; 293 | } 294 | .post-side-info .panel .item:last-child{ 295 | border:none; 296 | } 297 | .post-side-info .avatar { 298 | z-index: 2; 299 | border-radius: 50%; 300 | display:flex; 301 | border: 5px solid #fafafa; 302 | } 303 | .post-side-info .avatar a{ 304 | height:64px; 305 | } 306 | .post-side-info .avatar img { 307 | border-radius: 50%; 308 | box-shadow: 0px 0px 15px rgba(0,0,0,0.15); 309 | } 310 | .post-meta { 311 | margin-top: -0.5em; 312 | padding: 0; 313 | color: #999; 314 | display:none; 315 | font-size: .92857em; 316 | } 317 | 318 | .post-meta li { 319 | display: inline-block; 320 | margin: 0 8px 0 0; 321 | padding-left: 12px; 322 | border-left: 1px solid #EEE; 323 | } 324 | 325 | .post-meta li:first-child { 326 | margin-left: 0; 327 | padding-left: 0; 328 | border: none; 329 | } 330 | 331 | .post-content { 332 | line-height: 1.5; 333 | } 334 | 335 | .post .tags { 336 | clear: both; 337 | } 338 | 339 | .post-near { 340 | list-style: none; 341 | margin: 30px 0; 342 | padding: 0; 343 | color: #999; 344 | } 345 | 346 | .post-near li { 347 | margin: 10px 0; 348 | } 349 | 350 | .archive-title { 351 | padding: 8px 14px 10px; 352 | border-left: 2px solid #6495ed; 353 | background-color:white; 354 | box-shadow:0 0 15px rgba(0,0,0,0.06); 355 | color: #999; 356 | font-size: 1em; 357 | } 358 | 359 | .more { 360 | text-align: center; 361 | } 362 | 363 | .more a { 364 | border: none; 365 | } 366 | 367 | .protected .text { 368 | width: 50%; 369 | } 370 | 371 | .page-navigator { 372 | list-style: none; 373 | margin: 25px 0; 374 | padding: 0; 375 | text-align: center; 376 | } 377 | 378 | .page-navigator li { 379 | display: inline-block; 380 | margin: 0 4px; 381 | } 382 | 383 | .page-navigator a { 384 | display: inline-block; 385 | padding: 0 10px; 386 | height: 30px; 387 | 388 | transition:all 0.2s; 389 | line-height: 30px; 390 | } 391 | 392 | .page-navigator a:hover { 393 | background: #EEE; 394 | text-decoration: none; 395 | box-shadow: 0px 0px 7px rgba(0,0,0,0.04); 396 | } 397 | 398 | .page-navigator .current a { 399 | color: #444; 400 | box-shadow: 0px 0px 7px rgba(0,0,0,0.04); 401 | background: #EEE; 402 | } 403 | 404 | .comment-list,.comment-list ol { 405 | list-style: none; 406 | margin: 0; 407 | padding: 0; 408 | } 409 | 410 | .comment-list li { 411 | padding: 14px; 412 | } 413 | 414 | .comment-list li .comment-reply { 415 | text-align: right; 416 | font-size: .92857em; 417 | } 418 | 419 | .comment-meta a { 420 | color: #999; 421 | font-size: .92857em; 422 | } 423 | 424 | .comment-author { 425 | display: block; 426 | margin-bottom: 3px; 427 | color: #444; 428 | } 429 | 430 | .comment-author .avatar { 431 | float: left; 432 | margin-right: 10px; 433 | } 434 | 435 | .comment-author cite { 436 | font-weight: bold; 437 | font-style: normal; 438 | } 439 | 440 | .comment-list .respond { 441 | margin-top: 15px; 442 | border-top: 1px solid #EEE; 443 | } 444 | 445 | .respond .cancel-comment-reply { 446 | float: right; 447 | margin-top: 15px; 448 | font-size: .92857em; 449 | } 450 | 451 | #comment-form label { 452 | display: block; 453 | margin-bottom: .5em; 454 | font-weight: bold; 455 | } 456 | 457 | #comment-form .required:after { 458 | content: " *"; 459 | color: #C00; 460 | } 461 | 462 | #secondary { 463 | padding-top: 5px; 464 | word-wrap: break-word; 465 | } 466 | 467 | .widget { 468 | margin-bottom: 30px; 469 | } 470 | .widget-title { 471 | 472 | display:flex; 473 | align-items: center; 474 | font-weight: normal; 475 | box-shadow: 0px 0px 15px rgba(0,0,0,0.08); 476 | background-color: #b3baff; 477 | } 478 | .widget-title span{ 479 | padding: 10px 12px; 480 | font-size: 14px; 481 | color: white; 482 | } 483 | .widget-title svg{ 484 | box-shadow: inset 0px 0px 15px rgba(0,0,0,0.03); 485 | padding: 10px; 486 | background-color: #bda8e8; 487 | } 488 | .widget-list { 489 | list-style: none; 490 | padding: 0 0 0 7px; 491 | } 492 | 493 | .widget-list li { 494 | margin: 5px 0; 495 | line-height: 1.6; 496 | } 497 | 498 | .widget-list li ul { 499 | margin-left: 15px; 500 | } 501 | 502 | #footer { 503 | padding: 3em 0; 504 | line-height: 1.5; 505 | text-align: center; 506 | color: #999; 507 | } 508 | 509 | .error-page { 510 | margin-top: 100px; 511 | margin-bottom: 100px; 512 | } 513 | 514 | .post-content,.comment-content { 515 | line-height: 1.5; 516 | word-wrap: break-word; 517 | } 518 | 519 | .post-content h2,.comment-content h2 { 520 | font-size: 1.28571em; 521 | } 522 | 523 | .post-content img,.comment-content img,.post-content video,.comment-content video { 524 | max-width: 100%; 525 | } 526 | 527 | .post-content a img,.comment-content a img { 528 | background: #FFF; 529 | position: relative; 530 | bottom: -4px; 531 | } 532 | 533 | .post-content hr,.comment-content hr { 534 | margin: 2em auto; 535 | width: 100px; 536 | border: 1px solid #E9E9E9; 537 | border-width: 2px 0 0 0; 538 | } 539 | 540 | .aligncenter,div.aligncenter { 541 | display: block; 542 | margin-left: auto; 543 | margin-right: auto; 544 | } 545 | 546 | .alignleft { 547 | float: left; 548 | } 549 | 550 | .alignright { 551 | float: right; 552 | } 553 | 554 | img.alignleft { 555 | margin: 0 15px 0 0; 556 | } 557 | 558 | img.alignright { 559 | margin: 0 0 0 15px; 560 | } 561 | 562 | @media(max-width:767px) { 563 | body { 564 | font-size: 81.25%; 565 | } 566 | 567 | #nav-menu a { 568 | float: none; 569 | display: inline-block; 570 | margin: 0 -2px; 571 | } 572 | } 573 | 574 | @media(max-width:768px) { 575 | #header,.post-title,.post-meta { 576 | text-align: center; 577 | } 578 | 579 | } 580 | @media(max-width:991px) { 581 | .nav-tools{ 582 | justify-content: center; 583 | } 584 | #header{ 585 | background-image:url(https://ero.ink/usr/uploads/2018/03/725573202.png); 586 | background-attachment: inherit; 587 | } 588 | article .cover{ 589 | height:250px; 590 | } 591 | article .cover .title{ 592 | margin-top:-40px; 593 | } 594 | #comment-form .extra{ 595 | flex-direction: column; 596 | } 597 | #comment-form .extra input{ 598 | margin:5px 0!important; 599 | } 600 | #comment-form .extra svg{ 601 | display:none; 602 | } 603 | #comments .avatar,#comments .comment-reply{ 604 | transform:scale(0.8); 605 | } 606 | #comments .comment-element{ 607 | padding:5px 20px!important; 608 | } 609 | } 610 | @media(min-width:1200px) { 611 | .container { 612 | max-width: 952px; 613 | } 614 | } 615 | @media(max-width:1295px){ 616 | .post-meta{ 617 | display:inherit; 618 | } 619 | } 620 | .hidden { 621 | display: none!important; 622 | visibility: hidden; 623 | } 624 | 625 | .sr-only { 626 | border: 0; 627 | height: 1px; 628 | margin: -1px; 629 | overflow: hidden; 630 | padding: 0; 631 | position: absolute; 632 | width: 1px; 633 | } 634 | 635 | .sr-only.focusable:active,.sr-only.focusable:focus { 636 | clip: auto; 637 | height: auto; 638 | margin: 0; 639 | overflow: visible; 640 | position: static; 641 | width: auto; 642 | } 643 | 644 | .invisible { 645 | visibility: hidden; 646 | } 647 | .appstylebody { 648 | font-size:100%; 649 | font-weight:bold; 650 | text-align:center; 651 | } 652 | .appcenterf { 653 | } 654 | .appcenter { 655 | transform:translate(0,-45%); 656 | } 657 | 658 | #comments { 659 | transition: opacity 0.3s; 660 | 661 | } 662 | #comments{ 663 | box-shadow: 0px 0px 15px rgba(0,0,0,0.06); 664 | } 665 | #comments *{ 666 | font-family:"microsoft yahei";!important; 667 | } 668 | #comments > li { 669 | display: none; 670 | } 671 | #comments .comment-author span .avatar { 672 | border-radius: 50%; 673 | margin-bottom: -10px; 674 | } 675 | #comments .comment-container { 676 | display: flex; 677 | } 678 | #comments .comment-child .comment-author-info{ 679 | margin-top:0!important; 680 | } 681 | #comments .comment-author-info { 682 | margin-top:4px; 683 | margin-left: 10px; 684 | width: 100%; 685 | } 686 | #comments .comment-author-name { 687 | font-size: 15px; 688 | } 689 | #comments .comment-time { 690 | font-size: 13px; 691 | margin-left: 5px; 692 | color: transparent; 693 | transition: all 0.25s; 694 | } 695 | #comments .comment-reply { 696 | background-color: #efefef; 697 | margin-right:10px; 698 | display: flex; 699 | height:50px; 700 | width: 50px; 701 | border-radius: 50%; 702 | flex-direction: column; 703 | padding: 0; 704 | align-items: center; 705 | justify-content: center; 706 | opacity:0; 707 | color: #5d5c5c; 708 | transition: all 0.25s; 709 | } 710 | #comments .comment-reply .mdi { 711 | color: inherit; 712 | transition: all 0.25s; 713 | } 714 | #comments .comment-reply:hover { 715 | background-color: #e0e0e0; 716 | box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1), inset 0px 0px 0px rgba(0, 0, 0, 0.1); 717 | color: #000; 718 | } 719 | #comments .comment-reply:active { 720 | background-color: #cecece; 721 | box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.1), inset 0px 0px 15px rgba(0, 0, 0, 0.1); 722 | color: #000; 723 | } 724 | #comments .comment-reply:active .mdi { 725 | margin-left: -2px; 726 | margin-right: 2px; 727 | } 728 | #comments .comment-content { 729 | font-size: 13px; 730 | margin-top:10px; 731 | word-break: break-all; 732 | padding-right: 40px; 733 | transition: all 0.25s; 734 | } 735 | #comments .comment-content p { 736 | margin: 5px 0; 737 | } 738 | #comments .comment-list { 739 | padding: 0; 740 | margin: 0; 741 | overflow: hidden; 742 | 743 | } 744 | #comments > .comment-list > li { 745 | border-top: solid 1px #f7f7f7; 746 | padding: 0; 747 | margin: 0; 748 | overflow: hidden; 749 | background-color: rgba(255, 255, 255, 0.7); 750 | list-style: none; 751 | } 752 | #comments > .comment-list > li:nth-child(2n) { 753 | background-color: #fcfcfc; 754 | } 755 | #comments .a-comment { 756 | display: flex; 757 | align-items: center; 758 | } 759 | #comments .a-comment:hover .comment-reply { 760 | opacity:1; 761 | animation: roll 0.3s; 762 | } 763 | #comments .a-comment:hover .comment-time { 764 | color: #929292; 765 | } 766 | #comments .a-comment:hover .comment-content { 767 | padding-right: 0; 768 | } 769 | #comments .comment-children li { 770 | padding: 0 0 0 0px!important; 771 | } 772 | #comments .comment-element { 773 | padding: 15px 20px; 774 | width: 100%; 775 | } 776 | #comments > .comment-list > li > .comment-children > .comment-list > li { 777 | list-style: none; 778 | padding: 0 0 0 40px!important; 779 | } 780 | #comments > .comment-list > li > .comment-children > .comment-list > li > .comment-children > .comment-list > li { 781 | list-style: none; 782 | padding: 0 0 0 40px!important; 783 | } 784 | #comments .comment-info { 785 | display: flex; 786 | } 787 | #comments .comment-info input { 788 | width: 100%; 789 | border: none; 790 | -webkit-appearance: none; 791 | outline: none; 792 | font-size: 14px; 793 | padding: 5px; 794 | background-color: transparent; 795 | color: rgba(212, 212, 212, 0.8); 796 | transition: background-color 0.5s, border-bottom 0.5s, color 0.5s; 797 | border-bottom: solid 1px rgba(212, 212, 212, 0.4); 798 | } 799 | #comments .avatar { 800 | border-radius: 50%; 801 | box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); 802 | } 803 | #comments .comments-head { 804 | display: flex; 805 | font-size: 1.1em; 806 | padding: 12px 25px; 807 | font-weight: normal; 808 | background-color: #6f6f6f; 809 | color:white; 810 | } 811 | #comments .comment-child img.avatar { 812 | width: 45px; 813 | height: 45px; 814 | } 815 | #comments .comment-child .comment-content p { 816 | margin: 0; 817 | } 818 | #comments .comment-child .comment-author-name { 819 | font-size: 14px; 820 | } 821 | #comments .comment-child .comment-time { 822 | font-size: 12px; 823 | } 824 | #comments a { 825 | color: #8384ea; 826 | } 827 | #comment-form{ 828 | margin-top:20px; 829 | } 830 | #comment-form form { 831 | margin-bottom: 0; 832 | } 833 | #comment-form .send-comment .reply-info { 834 | transition: all 0.25s; 835 | height: 34px; 836 | padding: 0 20px; 837 | justify-content: space-between; 838 | background-color: #9cdf7f; 839 | color: white; 840 | box-shadow: 0 0 15px rgba(0,0,0,0.1); 841 | font-size: 13px; 842 | display: flex; 843 | align-items: center; 844 | } 845 | #comment-form .send-comment .reply-info a { 846 | color: #575F53; 847 | cursor: pointer; 848 | } 849 | #comment-form .send-comment .reply-info-closed { 850 | height: 0; 851 | opacity: 0; 852 | padding: 0 45px; 853 | } 854 | #comment-form .send-comment .respond { 855 | display: flex; 856 | align-items: flex-end; 857 | flex-direction: column; 858 | padding: 0; 859 | margin: 0; 860 | } 861 | 862 | #comment-form:hover .extra { 863 | margin-right:80px; 864 | } 865 | #comment-form .send-comment textarea { 866 | width: 100%; 867 | resize: none; 868 | max-width: 100%; 869 | box-sizing: border-box; 870 | border: none; 871 | -webkit-appearance: none; 872 | padding: 15px 20px; 873 | outline: none; 874 | box-shadow: 0px 0px 15px rgba(0,0,0,0.04); 875 | font-size: 13px; 876 | background-color: white; 877 | color: #222; 878 | background-size:135px; 879 | transition: all 0.5s,background-position 0.3s,background-size 0.3s; 880 | background-image:url(./img/kongou.png); 881 | background-repeat: no-repeat; 882 | background-position: right bottom; 883 | } 884 | #comment-form:hover .send-comment textarea { 885 | background-position: right 70px bottom; 886 | background-size: 100px; 887 | } 888 | #comment-form .send-comment .send { 889 | background-color: #bdeaff; 890 | margin-right:10px; 891 | cursor:pointer; 892 | display: flex; 893 | height:50px; 894 | width: 50px; 895 | border-radius: 50%; 896 | flex-direction: column; 897 | box-shadow: 0px 0px 15px rgba(0,0,0,0.06); 898 | margin: -25px 15px; 899 | z-index: 1; 900 | padding: 0; 901 | align-items: center; 902 | animation:roll-out 0.3s; 903 | animation-fill-mode: forwards; 904 | justify-content: center; 905 | opacity:0; 906 | color: #5d5c5c; 907 | transition: all 0.25s; 908 | } 909 | #comment-form:hover .send { 910 | animation:roll-in 0.3s; 911 | animation-fill-mode: forwards!important; 912 | } 913 | #comment-form .send-comment .send .mdi { 914 | color: inherit; 915 | transition: all 0.25s; 916 | } 917 | #comment-form .send-comment .send:hover { 918 | background-color: #abe4ff; 919 | box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1), inset 0px 0px 0px rgba(0, 0, 0, 0.1); 920 | color: #000; 921 | } 922 | #comment-form .send-comment .send:active { 923 | background-color: #abe4ff; 924 | box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.1), inset 0px 0px 15px rgba(0, 0, 0, 0.1); 925 | color: #000; 926 | } 927 | #comment-form .send-comment .send:active .mdi { 928 | margin-left: 2px; 929 | margin-right: -2px; 930 | } 931 | #comment-form .extra { 932 | display: flex; 933 | transition:all 0.3s; 934 | margin-top:10px; 935 | padding-bottom:30px; 936 | align-items: center; 937 | 938 | } 939 | #comment-form .extra input { 940 | margin:0 10px; 941 | box-shadow: 0px 0px 15px rgba(0,0,0,0.04); 942 | width: 100%; 943 | border: none; 944 | -webkit-appearance: none; 945 | outline: none; 946 | font-size: 12px; 947 | color: #222; 948 | padding: 6px 8px; 949 | background-color: white; 950 | transition: all 0.5s; 951 | } 952 | #comment-form .extra input:hover,#comment-form .extra input:focus,#comment-form textarea:hover,#comment-form textarea:focus { 953 | box-shadow: 0px 0px 15px rgba(0,0,0,0.03), 0px 0px 15px rgba(0,0,0,0.08); 954 | } 955 | @keyframes roll-in 956 | { 957 | from {opacity:0;transform:scale(0.5);} 958 | to {opacity:1;transform:scale(1);} 959 | } 960 | @keyframes roll-out 961 | { 962 | from {opacity:1;transform:scale(1);} 963 | to {opacity:0;transform:scale(0.5);} 964 | 965 | } 966 | .friends { 967 | display: flex; 968 | flex-wrap: wrap; 969 | font-family:"microsoft yahei"; 970 | } 971 | .friends .a-friend { 972 | display: flex; 973 | margin: 10px 10px 0 0; 974 | box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06); 975 | padding: 10px 10px 14px; 976 | transition: all 0.3s; 977 | } 978 | .friends .a-friend:hover { 979 | box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08); 980 | } 981 | .friends .a-friend:active { 982 | transform: scale(0.97); 983 | } 984 | .friends .a-friend .blog-avatar { 985 | background-color: white; 986 | margin-top:-4px; 987 | border-radius: 50%; 988 | width: 50px; 989 | height: 50px; 990 | } 991 | .friends .a-friend .text-container { 992 | margin-left: 10px; 993 | } 994 | .friends .a-friend .text-container .name { 995 | font-size: 15px; 996 | } 997 | .friends .a-friend .text-container .description { 998 | margin-top:5px; 999 | font-size: 12.5px; 1000 | } --------------------------------------------------------------------------------