/*广告 adblock */
#ad_t2 {
    display: none;
}
.c_ad_block {
    display: none;
}



#navigator {
    background-color: #fff;
    height: 50px;
    clear: both;
    margin-top: 50px;
    position: relative;
}


.cnblogs_code pre {
font-family: Consolas!important;
font-size: 16px!important;
word-wrap: break-word;
white-space: pre-wrap;
}

.cnblogs_code span {
font-family: Consolas!important;

font-size: 16px!important;
line-height: 1.5!important;
}

body {
color: #000;
background: url(https://www.cnblogs.com/images/cnblogs_com/NSD-email0820/1284642/o_0072Vf1pgy1foxlnayk8fj31kw0w0tve.jpg) fixed;
background-size: 1300px;
background-repeat: no-repeat;
font-family: "Helvetica Neue",Helvetica,Verdana,Arial,sans-serif;
font-size: 13px;
min-height: 101%;
background-size: cover;
}

#home {
opacity: 0.85;
margin: 0 auto;
width: 65%;
min-width: 1050px;
background-color: #fff;
padding: 30px;
margin-top: 30px;
margin-bottom: 50px;
box-shadow: 0 2px 6px rgba(100, 100, 100, 0.3);
}

#cnblogs_post_body p {
font-family:"Comic Sans MS";
font-size:15px;
}
pre{
    border: solid 1px #ccc;
    padding: 5px;
    overflow:auto;
    background: #eee;
    font-family:Consolas "Consolas" Fixedsys;
}
.code{}
.longcode{
    height: 200px;
}
.console{
    background: #000;
    color:#ccc;
    font-family:"Consolas";
}





























/*评论框*/
div.commentform textarea {
    border-radius: 8px;
    box-shadow:3px 3px 3px #e8e0e0 inset; 
}
#tbCommentBody.comment_textarea {
    width: 98%;
    background: #fff url(//images.cnitblog.com/blog/708426/201501/082214147965461.png) right bottom no-repeat;
    padding-top: 8px;
}


/*评论框美化*/
div.commentform input.email, div.commentform input.url {
    background-image: url(//static.cnblogs.com/images/icon_form.gif);
    background-repeat: no-repeat;
    border: 1px solid #ccc;
    padding: 4px 4px 4px 30px;
    width: 300px;
    font-size: 13px;
    border-radius: 5px;
}








































 




































/* 删除反对按钮,有点邪恶了 */
.buryit{
  display: none;
}

/*好看的滚动条*/
::-webkit-scrollbar{
    width:10px!important;
    height:10px!important;
    -webkit-appearance:none;
}
::-webkit-scrollbar-thumb{
    height:5px;border:1px solid transparent;
    border-top:none;border-bottom:none;
    -webkit-border-radius:6px;
    background-color:rgba(0,0,0,.3);
    background-clip:padding-box;
}



/*scroll to top*/
#scrollTop div{
  left:0;
  overflow:hidden;
  position:absolute;
  top:0;
  width:149px;
  margin:0;
  padding:0
}
#scrollTop .level-2{
  background:url(https://images2015.cnblogs.com/blog/894443/201707/894443-20170716165243785-2122236756.png) no-repeat scroll -149px 0 transparent;
  display:none;
  height:250px;
  opacity:0;
  z-index:1
}
#scrollTop .level-3{
  background:none repeat scroll 0 0 transparent;
  cursor:pointer;
  display:block;
  height:150px;
  z-index:2
}
#scrollTop{
  background:url(https://images2015.cnblogs.com/blog/894443/201707/894443-20170716165243785-2122236756.png) no-repeat scroll 0 0 transparent;
  cursor:default;
  display:block;
  height:180px;
  overflow:hidden;
  position:fixed;
  right:0;
  top:90%;
  width:149px;
  z-index:11;
  margin:-125px 0 0;
  padding:0
}




/*按钮*/
input[type=button] {
    height: auto !important;
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    border: 1px solid #9b59b64a;
    border-radius: 4px;
    color: #fff;
    background-color: #9b59b6cc;
    width: auto !important;
}
/*评论框美化*/
div.commentform input.email, div.commentform input.url {
    background-image: url(//static.cnblogs.com/images/icon_form.gif);
    background-repeat: no-repeat;
    border: 1px solid #ccc;
    padding: 4px 4px 4px 30px;
    width: 300px;
    font-size: 13px;
    border-radius: 5px;
}

#commentform_title {
    background-repeat: no-repeat;
    margin-bottom: 10px;
    font-size: 16px;
    padding: 0;
    background: none;
}
.commentbox_title_left {
    display: none;
}

#tbCommentBody.comment_textarea {
    padding: 8px 10px;
}

div.commentform p {
    margin-top: 10px;
    line-height: 40px;
}



.input_my_zzk {
    width: 120px;
    height:25px;
    border-radius: 5px 5px 5px 5px;
}


.catListTitle {
    background: #e74c3c;
    border-bottom: 1px solid #e74c3c8c;
    line-height: 25px;
    height: 25px;
}

.postTitle a:link, .postTitle a:visited, .postTitle a:active {
    color: #e74c3c;
    transition: all 0.4s linear 0s;
}






#sideBarMain #b/*最下端美化*/
#EntryTag a {
    margin-left: 5px;
    height: 20px;
    line-height: 20px;
    color: #333333;
    padding: 3px 14px;
    border-radius: 10px;
    margin: 2px 5px 0;
    background: #e7e7e7;
    text-decoration: none;
    font-size: 10pt;
}






logCalendar>tbody>tr:nth-child(n+3) td.CalTodayDay {
    width: 25px!important;
    border-radius: 20px!important;
    background-color: #d35400!important;
    color: #fff!important;
}


#post_next_prev {
    line-height: 2.5;
    font-size: 13px;
}





/*最下端美化*/
#EntryTag a {
    margin-left: 5px;
    height: 20px;
    line-height: 20px;
    color: #333333;
    padding: 3px 14px;
    border-radius: 10px;
    margin: 2px 5px 0;
    background: #e7e7e7;
    text-decoration: none;
    font-size: 10pt;
}

#green_channel {
    display: none;
}




/* 推荐及反对 */
/* ignore反对 */
.buryit {
    display: none;
}









#Snow{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999;
    background: rgba(255,255,240,0.1);
    pointer-events: none;
}

























/* Minification failed. Returning unminified contents.
(878,42): run-time error CSS1062: Expected semicolon or closing curly-brace, found ')'
 */
#EntryTag {
    margin-top: 20px;
    font-size: 9pt;
    color: gray;
}

.topicListFooter {
    text-align: right;
    margin-right: 10px;
    margin-top: 10px;
}

#divRefreshComments {
    text-align: right;
    margin-right: 10px;
    margin-bottom: 5px;
    font-size: 9pt;
}

* {
    margin: 0;
    padding: 0;
}

html {
    height: 100%;
}

body {
    color: #0000cd;
    background: #D2D8DE;
    font-family: Verdana,Arial,Helvetica,sans-serif;
    font-size: 14px;
    min-height: 101%;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

fieldset, img {
    border: 0;
}

ul {
    word-break: break-all;
}

li {
    list-style: none;
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: normal;
}

a:link {
    color: black;
    text-decoration: none;
}

a:visited {
    color: black;
    text-decoration: none;
}

a:hover {
    color: #b0e0e6;
    text-decoration: underline;
}

a:active {
    color: black;
    text-decoration: none;
}

.clear {
    clear: both;
}



#header {
}

#blogTitle {
    height: 70px;
    background: #fff;
    clear: both;
}

    #blogTitle h1 {
        font-size: 150%;
        font-weight: bold;
        line-height: 1.5;
        margin-left: 1em;
        margin-top: 10px;
        width: 50%;
        float: left;
    }

    #blogTitle h2 {
        margin-left: 4em;
        line-height: 1.5;
        width: 50%;
        float: left;
    }

#blogLogo {
    float: right;
}

#navigator {
    background-color: #0000cd;
    height: 60px;
    line-height: 60px;
    overflow: hidden;
    clear: both;
}

#navList {
    min-height: 30px;
    float: left;
}

    #navList li {
        float: left;
    }

    #navList a {
        display: block;
        padding: 0 1.5em;
        height: 60px;
        font-family: '微软雅黑';
        float: left;
        font-size: 1.2em;
        text-align: center;
        transition-duration: 0.3s;
    }

        #navList a:link, #navList a:visited, #navList a:active {
            color: #bbb;
        }

        #navList a:hover {
            color: white;
            background-color: #343434;
            text-decoration: none;
            text-shadow: 0px 0px 1px #000;
        }

        #navList a.aHeaderXML {
            padding-top: 25px;
            overflow: hidden;
        }

            #navList a.aHeaderXML img {
                vertical-align: middle;
            }

.blogStats {
    float: right;
    color: #ccc;
    padding-right: 10px;
    text-align: right;
}
/*****home和头部结束**************************/

/*****主页文章列表开始**************************/
#main {
    min-width: 950px;
    text-align: left;
    padding: 20px 0 0 10px;
    overflow: hidden;
}

#mainContent .forFlow {
    margin-left: 20em;
    float: none;
    width: auto;
}

#mainContent {
    min-height: 200px;
    padding: 0px 0px 10px 0;
    *padding-top: 10px;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    overflow: hidden;
    word-break: break-all;
    float: right;
    margin-left: -20em;
    margin-right: 20px;
    display: inline;
    width: 100%
}

.day {
    min-height: 10px;
    _height: 10px;
    background: #fff;
    border-radius: 7px;
    box-shadow: 1px 1px 2px #A7A8AD;
    color: #666666;
    margin: 0 5px 20px 0;
    padding: 5px 20px 10px;
}

.dayTitle {
    width: 100%;
    color: #666;
    line-height: 2.2em;
    font-size: 22px;
    clear: both;
    border-bottom: 1px solid #ccc;
    text-align: center;
}

.postTitle {
    font-size: 110%;
    font-weight: bold;
    border-bottom: 1px dashed #ccc;
    float: right;
    line-height: 2.5em;
    font-size: 18px;
    width: 100%;
    clear: both;
}

    .postTitle a:link, .postTitle a:visited, .postTitle a:active {
        color: #0000cd;
        transition: all 0.4s linear 0s
    }

    .postTitle a:hover {
        color: #b0e0e6;
        text-decoration: none;
        margin-left: 10px;
    }

.postCon {
    float: right;
    line-height: 1.5;
    width: 100%;
    clear: both;
    padding: 10px 0;
}

.postDesc {
    float: right;
    width: 100%;
    clear: both;
    text-align: right;
    padding-right: 5px;
    color: #A8B1BA;
    line-height: 2.5em;
}

    .postDesc a:link, .postDesc a:visited, .postDesc a:active {
        color: #666;
    }

    .postDesc a:hover {
        color: #b0e0e6;
        text-decoration: none;
    }

.postSeparator {
    clear: both;
    height: 1px;
    border-top: 1px dotted #666;
    width: 100%;
    clear: both;
    float: right;
    margin: 0 auto 15px auto;
}
/*****主页文章列表开始**************************/

/*****侧边栏开始********************************/
#sideBar {
    width: 230px;
    min-height: 200px;
    padding: 0px 0 0px 5px;
    float: left;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    overflow: hidden;
    word-break: break-all;
}

.newsItem .catListTitle {
    display: none;
}

.newsItem, #blog-calendar {
    margin-bottom: 15px;
    text-indent: 0;
    padding: 10px;
    background: #FAFCFD;
    border-radius: 7px;
    box-shadow: 1px 1px 2px #A7A8AD;
    line-height: 1.5;
}
/**日历控件样式开始**/
#calendar {
    margin-bottom: 15px;
    padding: 5px;
    border-radius: 7px;
    box-shadow: 1px 1px 2px #A7A8AD;
    background: #fff;
}

    #calendar .Cal {
        width: 100%;
        line-height: 1.5;
    }

    #calendar th {
        padding: 2px 5px;
    }

    #calendar td {
        padding: 2px 5px;
    }

        #calendar td a {
            display: block;
        }

.Cal { /**日历容器table**/
    border: none;
    color: #666;
}

#calendar table a:link, #calendar table a:visited, #calendar table a:active {
    font-weight: bold;
}

#calendar table a:hover {
    color: white;
    text-decoration: none;
    background-color: #0000cd;
}

.CalTodayDay { /**今天日期样式**/
    color: #0000cd;
}

#calendar .CalNextPrev a:link, #calendar .CalNextPrev a:visited, #calendar .CalNextPrev a:active { /**上个月、下个月箭头样式**/
    font-weight: bold;
    background-color: white;
}

.CalDayHeader {
    border-bottom: 1px solid #ccc;
}

.CalTitle { /**日历年月头部样式**/
    width: 100%;
    background: white;
    color: black;
    border-bottom: 1px solid #666;
}
/**日历控件样式结束**/
.catListTitle {
    background: #0000cd;
    border-bottom: 1px solid #83a;
    border-top-left-radius: 7px;
    border-top-right-radius: 7px;
    color: #FFFFFF;
    font-size: 1.2em;
    height: 1.8em;
    line-height: 1.8em;
    padding: 5px;
    text-indent: 0.5em;
    text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.3);
}

.catListComment {
    line-height: 1.5;
}

.divRecentComment {
    text-indent: 2em;
    color: #666;
}

#sideBarMain ul {
    line-height: 1.5;
}
/* 最新评论等 开始 */
#AjaxHolder_UpdatePanel1,
#AjaxHolder_PostComment_divCommnentArea,
#profile,
.entrylist,
.gallery {
    background: none repeat scroll 0 0 #FFFFFF;
    border-radius: 7px;
    box-shadow: 1px 1px 2px #A7A8AD;
    margin: 0 0 15px 0;
    min-height: 200px;
    overflow: hidden;
    padding: 0 15px;
    text-overflow: ellipsis;
    word-break: break-all;
}

#AjaxHolder_PostComment_divCommnentArea {
    padding: 10px;
}

#profile,
.entrylist,
.gallery {
    padding: 10px;
}

.catListEssay, .catListLink, .catListNoteBook,
.catListTag,
.catListPostCategory,
.catListPostArchive,
.catListImageCategory,
.catListArticleArchive,
.catListView,
.catListFeedback,
.mySearch,
.catListComment,
.catListBlogRank,
.catList,
.catListArticleCategory {
    margin-bottom: 15px;
    background: #FAFCFD;
    border-radius: 7px;
    box-shadow: 1px 1px 2px #A7A8AD;
    overflow: hidden;
    zoom: 1;
}

    .catListEssay ul li, .catListLink ul li, .catListNoteBook ul li,
    .catListTag ul li,
    .catListPostCategory ul li,
    .catListPostArchive ul li,
    .catListImageCategory ul li,
    .catListArticleArchive ul li,
    .catListView ul li,
    .catListFeedback ul li,
    .catListComment ul li,
    .catListBlogRank ul li,
    .catList ul li,
    .catListArticleCategory ul li {
        text-indent: 1em;
        padding: 10px 5px;
        border-bottom: 1px solid #DADFE1;
        border-top: 1px solid #FFFFFF;
        overflow: hidden;
    }

        .catListEssay ul li a, .catListLink ul li a, .catListNoteBook ul li a,
        .catListTag ul li a,
        .catListPostCategory ul li a,
        .catListPostArchive ul li a,
        .catListImageCategory ul li a,
        .catListArticleArchive ul li a,
        .catListView ul li a,
        .catListFeedback ul li a,
        .catListComment ul li a,
        .catListBlogRank ul li a,
        .catList ul li a
        .catListArticleCategory ul li a {
            text-indent: 1em;
            font-size: 12px;
        }

            .catListEssay ul li a:hover, .catListLink ul li a:hover, .catListNoteBook ul li a:hover,
            .catListTag ul li a:hover,
            .catListPostCategory ul li a:hover,
            .catListPostArchive ul li a:hover,
            .catListImageCategory ul li a:hover,
            .catListView ul li a:hover,
            .catListFeedback ul li a:hover,
            .catListArticleArchive ul li a:hover,
            .catListComment ul li a:hover {
                text-decoration: none;
            }

.divRecentCommentAticle {
    padding: 0 10px;
}

.divRecentComment {
    padding: 10px;
    font-size: 12px;
}

#AjaxHolder_PostComment_divCommnentArea td {
    padding: 5px 0;
}
/* 最新评论等 结束 */

/*****侧边栏结束********************************/


/****查看文章页面开始*************************/
#topics {
    min-height: 200px;
    margin-bottom: 15px;
    padding: 15px;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    overflow: hidden;
    word-break: break-all;
    background: #fff;
    border-radius: 7px;
    box-shadow: 1px 1px 2px #A7A8AD;
}

    #topics .postTitle {
        font-size: 130%;
        font-weight: bold;
        border-bottom: 1px solid #999;
        float: left;
        line-height: 2em;
        width: 100%;
        padding-left: 5px;
    }

.postBody {
    padding: 15px 2px 5px 5px;
    line-height: 1.5;
    color: #000;
    border-bottom: 1px solid #ccc;
}

#EntryTag {
    color: #666;
}

    #EntryTag a {
        margin-left: 5px;
    }

        #EntryTag a:link, #EntryTag a:visited, #EntryTag a:active {
            color: #666;
        }

        #EntryTag a:hover {
            color: #b0e0e6;
        }

#topics .postDesc {
    float: right;
    width: 100%;
    text-align: right;
    padding-right: 5px;
    color: #666;
    margin-top: 5px;
}

.feedback_area_title {
    font-weight: bold;
    line-height: 35px;
    margin: 10px 0;
    border-bottom: 1px solid #ccc;
    padding-left: 8px;
}

.louzhu {
    background: transparent url('images/icoLouZhu.gif') no-repeat scroll right top;
    padding-right: 16px;
}

.feedbackListSubtitle {
    color: #666;
}

    .feedbackListSubtitle a:link, .feedbackListSubtitle a:visited, .feedbackListSubtitle a:active {
        color: #666;
        font-weight: normal;
    }

    .feedbackListSubtitle a:hover {
        color: #b0e0e6;
        text-decoration: none;
    }

.feedbackManage {
    width: 200px;
    text-align: right;
    float: right;
}

.feedbackCon {
    border-bottom: 1px solid #ccc;
    padding: 20px 18px 10px 40px;
    min-height: 35px;
    _height: 35px;
    margin-bottom: 1em;
    line-height: 1.5;
}

#divRefreshComments {
    text-align: right;
    margin-bottom: 10px;
}

.commenttb {
    width: 320px;
}
/****查看文章页面开始*************************/

/****列表页面开始******************************/
.entrylistTitle, .PostListTitle, .thumbTitle { /**几个分类列表的标题样式**/
    font-size: 110%;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
    padding-bottom: 3px;
    line-height: 2em;
    padding-right: 10px;
}

.entrylistDescription {
    color: #666;
    text-align: right;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 10px;
    margin-bottom: 10px;
}

.entrylistItem {
    min-height: 20px;
    _height: 20px;
    margin-bottom: 30px;
    padding-bottom: 5px;
    width: 100%;
}

.entrylistPosttitle {
    font-size: 110%;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
    line-height: 2em;
    width: 100%;
    padding-left: 5px;
}

a.entrylistItemTitle {
    color: #b0e0e6;
}

    a.entrylistItemTitle:hover {
        color: #0000cd85;
    }

.entrylistPosttitle a:hover {
    text-decoration: none;
}

.entrylistPostSummary {
    margin-top: 5px;
    padding-left: 5px;
    margin-bottom: 5px;
}

.entrylistItemPostDesc {
    text-align: right;
    color: #666;
}

    .entrylistItemPostDesc a:link, .entrylistItemPostDesc a:visited, .entrylistItemPostDesc a:active {
        color: #666;
    }

    .entrylistItemPostDesc a:hover {
        color: #b0e0e6;
    }

.entrylist .postSeparator {
    clear: both;
    width: 100%;
    font-size: 0;
    line-height: 0;
    margin: 0;
    padding: 0;
    height: 0;
    border: none;
}

.pager {
    text-align: right;
    margin-right: 10px;
}

.PostList {
    border-bottom: 1px solid #ccc;
    clear: both;
    min-height: 1.5em;
    _height: 1.5em;
    padding-top: 10px;
    padding-left: 5px;
    padding-right: 5px;
    margin-bottom: 5px;
}

.postTitl2 {
    float: left;
}

.postDesc2 {
    color: #666;
    float: right;
}

.postText2 {
    clear: both;
    color: #666;
}

.pfl_feedback_area_title {
    line-height: 1.5;
    font-weight: bold;
    font-size: 16px;
    border-bottom: 1px solid #ccc;
    line-height: 2.5em;
}

    .pfl_feedback_area_title a, .pfl_feedbackManage a {
        color: #b0e0e6;
        margin: 0 10px;
        font-weight: normal;
    }

        .pfl_feedback_area_title a:hover, .pfl_feedbackManage a:hover {
            color: #0000cd;
        }

.pfl_feedbackManage a {
    margin: 0 0 0 0;
}

.pfl_feedbackItem {
    border-bottom: 1px solid #ccc;
    margin-bottom: 20px;
}

.pfl_feedbacksubtitle {
    width: 100%;
    border-bottom: 1px dotted #ccc;
    height: 2.5em;
    line-height: 2.5em;
}

.pfl_feedbackname {
    float: left;
    color: #A8B1BA;
}

.pfl_feedbackManage {
    float: right;
}

.pfl_feedbackCon {
    color: black;
    padding: 10px 0;
}

.pfl_feedbackAnswer {
    color: #0000cd;
    text-indent: 2em;
    padding-bottom: 10px;
}

.tdSentMessage {
    text-align: right;
}

.errorMessage {
    width: 300px;
    float: left;
}

#Profile1_panelAdd td {
    padding: 10px 0;
}
/****列表页面结束******************************/

/****相册页面开始******************************/
.divPhoto {
    border: 1px solid #ccc;
    padding: 2px;
    margin-right: 10px;
}

.thumbDescription {
    color: #b0e0e6;
    text-align: right;
    padding-top: 5px;
    padding-bottom: 5px;
    padding-right: 10px;
    margin-bottom: 10px;
}

#footer {
    text-align: center;
    min-height: 15px;
    _height: 15px;
    border-top: 1px solid black;
    margin-top: 10px;
    padding-top: 10px;
    margin-bottom: 10px;
}

.personInfo {
    margin-bottom: 20px;
}

.pages {
    text-align: right;
}

.postBody {
    line-height: 1.5;
}

    .postBody p, .postCon p {
        text-indent: 2em;
        margin: 0 auto 1em auto;
    }

    .postBody h2 {
        font-size: 150%;
        margin: 15px auto 2px auto;
        font-weight: bold;
    }

    .postBody h3 {
        font-size: 120%;
        margin: 15px auto 2px auto;
        font-weight: bold;
    }

    .postBody h4 {
        font-size: 110%;
        margin: 15px auto 2px auto;
        font-weight: bold;
        color: #333;
    }

    .postBody h5 {
        font-size: 100%;
        margin: 15px auto 2px auto;
        font-weight: bold;
        color: #333;
    }

    .postBody a:link, .postBody a:visited, .postBody a:active {
        text-decoration: underline;
    }

.postCon a:link, .postCon a:visited, .postCon a:active {
    text-decoration: underline;
}

.postBody ul, .postCon ul {
    margin-left: 2em;
}

.postBody li, .postCon li {
    list-style-type: disc;
    margin-bottom: 1em;
}

.postBody blockquote {
    background: url('images/comment.gif')) no-repeat 25px 0px;
    line-height: 1.6;
    color: #333;
}

.div_my_zzk {
    margin-left: 13px;
}

.input_my_zzk {
    width: 120px;
}

.blog_comment_body a:link {
    text-decoration: underline;
}

#cnblogs_post_body img {
    max-width: 820px;
}





















#home {
    margin: 0 auto;
    width: 70%;/*原始65*/
    min-width: 980px;/*页面顶部的宽度*/
    background-color: rgba(245, 245, 245, 0.7);
    padding: 30px;
    margin-top: 50px;
    margin-bottom: 50px;
    box-shadow: 0 2px 6px rgba(100, 100, 100, 0.3);
}
body {
    background: rgba(12, 100, 129, 1) url('https://www.cnblogs.com/images/cnblogs_com/NSD-email0820/1284642/o_0072Vf1pgy1foxlnayk8fj31kw0w0tve.jpg'
) fixed no-repeat;
    background-position: 50% 5%; 
    background-size: cover;
}
#blogTitle {
    height: 100px;  /*高度*/
    clear: both;
    background-color: rgba(245, 245, 245, 0);
}
#blogTitle h1 {
    font-size: 36px;
    font-weight: bold;
    line-height: 1.8em;/*原始 1.6em*/
    margin-top: 10px;/*原始 15px */
    color: #548B54;
}
#blogTitle h2 {
    font-weight: normal;
    font-size: 17px;/*原始 16px ；font-size: 1.0rem;*/      
    line-height: 1.8;
    color: #111;
    font-weight: bold;
    text-align: right;
    float: right; 
}
#navigator{
    background-color: rgba(33, 160, 139, 0.9);
}
#navList a:link, #navList a:visited, #navList a:active{
    color: #eee;
    font-size: 18px;
    font-weight: bold;
}
.blogStats{
    color: #eee;
}
.postTitle {
    border-left: 8px solid rgba(33, 160, 139, 0.68);
    margin-left: 10px;
    margin-bottom: 10px;
    font-size: 20px;
    float: right;
    width: 100%;
    clear: both;
}
.postTitle a:link, .postTitle a:visited, .postTitle a:active {
    color: #21759b;
    transition: all 0.4s linear 0s;
}
.postTitle a:hover {
    margin-left: 30px;
    color: #0f3647;
    text-decoration: none;
}
.postCon {
    float: right;
    line-height: 1.5em;
    width: 100%;
    clear: both;
    padding: 10px 0;
}

.day .postTitle a {
    padding-left: 10px;
}
.day {
    background: rgba(255, 255, 255, 0.5);
}
/*文章附加信息*/
.postDesc {   
    background: url(images/posted_time.png) no-repeat 0 1px;
    color: #757575;
    float: left;
    width: 100%;
    clear: both;
    text-align: left;     
    font-family: "微软雅黑" , "宋体" , "黑体" ,Arial;
    font-size: 13px;
    padding-right: 20px;/*5px  padding-left: 90px;posted 发表时间左边距离*/
    margin-top: 20px;
    line-height: 1.8;
    padding-bottom: 35px;
}

.newsItem, .catListEssay, .catListLink, .catListNoteBook, .catListTag, .catListPostCategory, 
.catListPostArchive, .catListImageCategory, .catListArticleArchive, .catListView, 
.catListFeedback, .mySearch, .catListComment, .catListBlogRank, .catList, .catListArticleCategory ,#blog-calendar
{
    background: rgba(255, 255, 255, 0.5);
    margin-bottom: 35px;
    word-wrap: break-word;
}

.CalTitle{
    background: rgba(255, 255, 255, 0);
}
.catListTitle{
    background-color: rgba(33, 160, 139, 0.9);
}

#topics{
    background: rgba(255, 255, 255, 0.5);
}

.c_ad_block{
    display: none;
}

#tbCommentBody{
    width: 100%;
    height: 200px;
    background: rgba(255, 255, 255, 0.5);
}

#q{background: rgba(255, 255, 255, 0);}

.CalNextPrev{background: rgba(255, 255, 255, 0);}

.cnblogs_code{
    background: rgba(255, 255, 255, 0);    
}

.cnblogs_code div{
    background: rgba(255, 255, 255, 0);    
}

.cnblogs_code_toolbar{
    background: rgba(255, 255, 255, 0);  
}
#main{min-width: 640px;}
.entrylist{
    background: rgba(255, 255, 255, 0.5);  
}

a:visited {
    color: #0000CD;
    text-decoration: none;
}

a:link {
    color: #0000CD;
    font-family: Comic SanS MS;
    font-weight: 500;
    text-decoration: none;
}

#blogTitle h2 {
    font-weight: normal;
    font-size: 17px;
    line-height: 1.8;
    color: #7B68EE;
    font-weight: bold;
    text-align: left;
    font-family: sans-serif;
    float: left;
}

#blogTitle h2 {
    margin-left: 2.em;
    line-height: 1.5;
    width: 50%;
    float: left;
}

.catListTitle {
    background-color: #6495ED;
}

.postTitle {
    border-left: 8px solid #0000FF;
    margin-left: 10px;
    margin-bottom: 10px;
    font-size: 20px;
    float: right;
    width: 100%;
    clear: both;
}

.postTitle a:link, .postTitle a:visited, .postTitle a:active {
    color: #8A2BE2;
    font-family: Comic SanS MS;
    transition: all 0.4s linear 0s;
}

.catListEssay ul li a, .catListLink ul li a, .catListNoteBook ul li a, .catListTag ul li a, .catListPostCategory ul li a, .catListPostArchive ul li a, .catListImageCategory ul li a, .catListArticleArchive ul li a, .catListView ul li a, .catListFeedback ul li a, .catListComment ul li a, .catListBlogRank ul li a, .catList ul li a
 .catListArticleCategory ul li a {
    text-indent: 1em;
    font-size: 14px;
}

#navigator {
    background-color: #4169E1;
border-radius: 10px;
}

#blogTitle h1 {
    font-size: 32px;
    font-weight: bold;
    line-height: 1.7em;
    margin-top: 10px;
    color: #548B54;
}

#footer {
    text-align: center;
    min-height: 15px;
    _height: 15px;
    font-family: Comic SanS MS;
    border-top: 1px solid black;
    font-size: 17px;
    margin-top: 10px;
    padding-top: 10px;
    margin-bottom: 10px;
}

pre {
/*控制代码不换行*/
    white-space: pre;
    word-wrap: normal;
}

.cnblogs-markdown hljs {
  display: block;
  overflow-x: auto;
  padding: 0.5em;
  color: #abb2bf;
  background: #282c34;
}
.cnblogs-markdown .hljs, .cnblogs-post-body .hljs {
    font-family: "Consolas" ,"Noto Mono","monospace"!important;
    font-size: 12px!important;
    line-height: 1.5!important;
    padding: 5px!important;
}

.hljs-comment,
.hljs-quote {
  color: #5c6370;
  font-style: italic;
}

.hljs-doctag,
.hljs-keyword,
.hljs-formula {
  color: #c678dd;
}

.hljs-section,
.hljs-name,
.hljs-selector-tag,
.hljs-deletion,
.hljs-subst {
  color: #e06c75;
}

.hljs-literal {
  color: #56b6c2;
}

.hljs-string,
.hljs-regexp,
.hljs-addition,
.hljs-attribute,
.hljs-meta-string {
  color: #98c379;
}

.hljs-built_in,
.hljs-class .hljs-title {
  color: #e6c07b;
}

.hljs-attr,
.hljs-variable,
.hljs-template-variable,
.hljs-type,
.hljs-selector-class,
.hljs-selector-attr,
.hljs-selector-pseudo,
.hljs-number {
  color: #d19a66;
}

.hljs-symbol,
.hljs-bullet,
.hljs-link,
.hljs-meta,
.hljs-selector-id,
.hljs-title {
  color: #61aeee;
}

.hljs-emphasis {
  font-style: italic;
}

.hljs-strong {
  font-weight: bold;
}

.hljs-link {
  text-decoration: underline;
}

code, pre {
    border-radius: 3px;
    background-color:#f7f7f7;
    color: inherit;
}

code {
    font-family: "Consolas" ,"Noto Mono","monospace";
    margin: 0 2px;
}

pre {
    line-height: 1.7em;
    overflow: auto;
    padding: 6px 10px;
    border-left: 10px solid 		#7CFC00;
}

pre > code {
    border: 0;
    display: inline;
    max-width: initial;
    padding: 0;
    margin: 0;
    overflow: initial;
    line-height: inherit;
    font-size: .85em;
    white-space: pre;
    background: 0 0;

}

code {
    color: #666555;
}

element.style {
    width: 930.021px;
    height: 600px;
    font-family: "Consolas" ,"Noto Mono","monospace";
    font-size: 12px;
    line-height: 1.5;
}

.cnblogs_code pre {
    font-family: "Consolas" ,"Noto Mono","monospace"!important;
    font-size: 12px!important;
    word-wrap: break-word;
    white-space: pre-wrap;
}

.cnblogs_code span {
    font-family: "Consolas" ,"Noto Mono","monospace"!important;
    font-size: 12px!important;
    line-height: 1.5!important;
}

.cnblogs_code {
    background-color: #F0F8FF!important;
    font-family: "Consolas" ,"Noto Mono","monospace"!important;
    font-size: 12px!important;
    padding: 5px;
    overflow: auto;
    border: 2px solid #B0E0E6;
    border-radius: 9px;
    margin: 5px 0;
    color: #000;
}

pre {
    line-height: 1.7em;
    overflow: auto;
    padding: 6px 10px;
    border: 3px solid #B0E0E6;
    border-radius: 10px;
}

#div_digg{
  position:fixed;
  bottom:5px;
  width:130px;
  right:20px;
  border:2px solid #6666FF;
  background-color:#fff;
  opacity:0.7;
  border-radius:3px 3px 3px 3px !important;
  transition-duration: 0.5s;
}
#div_digg:hover{
  opacity:1;
}



#cnblogs_post_body
{
    color: black;      
    font: 0.875em/1.5em "微软雅黑" , "PTSans" , "Arial" ,sans-serif;
    font-size: 15px;
}
#各个等级标题的颜色样式
#cnblogs_post_body h1    {
    background: #2B6695;
    border-radius: 6px 6px 6px 6px;
    box-shadow: 0 0 0 1px #5F5A4B, 1px 1px 6px 1px rgba(10, 10, 0, 0.5);
    color: #FFFFFF;
    font-family: "微软雅黑" , "宋体" , "黑体" ,Arial;
    font-size: 23px;
    font-weight: bold;
    height: 25px;
    line-height: 25px;
    margin: 18px 0 !important;
    padding: 8px 0 5px 5px;
    text-shadow: 2px 2px 3px #222222;
}
#cnblogs_post_body h2    {
    background: #008eb7;
    border-radius: 6px 6px 6px 6px;
    box-shadow: 0 0 0 1px #5F5A4B, 1px 1px 6px 1px rgba(10, 10, 0, 0.5);
    color: #FFFFFF;
    font-family: "微软雅黑" , "宋体" , "黑体" ,Arial;
    font-size: 20px;
    font-weight: bold;
    height: 25px;
    line-height: 25px;
    margin: 18px 0 !important;
    padding: 8px 0 5px 5px;
    text-shadow: 2px 2px 3px #222222;
}
#cnblogs_post_body h3    {
    background: #399ab2;
    border-radius: 6px 6px 6px 6px;
    box-shadow: 0 0 0 1px #5F5A4B, 1px 1px 6px 1px rgba(10, 10, 0, 0.5);
    color: #FFFFFF;
    font-family: "微软雅黑" , "宋体" , "黑体" ,Arial;
    font-size: 18px;
    font-weight: bold;
    height: 25px;
    line-height: 25px;
    margin: 18px 0 !important;
    padding: 8px 0 5px 5px;
    text-shadow: 2px 2px 3px #222222;
}
#cnblogs_post_body h4{
    background: #2B6600;
    border-radius: 6px 6px 6px 6px;
    box-shadow: 0 0 0 1px #5F5A4B, 1px 1px 6px 1px rgba(10, 10, 0, 0.5);
    color: #FFFFFF;
    font-family: "微软雅黑" , "宋体" , "黑体" ,Arial;
    font-size: 16px;
    font-weight: bold;
    height: 24px;
    line-height: 23px;
    margin: 12px 0 !important;
    padding: 5px 0 5px 10px;
    text-shadow: 2px 2px 3px #222222;
}
#页面中a标签鼠标位置
#cnblogs_post_body h2:a{
   color: rgb(235, 235, 235);
}
#cnblogs_post_body h2 a:hover{
   color: rgb(255, 102, 0);
}
#页面中标题位置
#cnblogs_post_body h1{
   color: rgb(235, 235, 235);
}
#cnblogs_post_body h1:hover{
   color: rgb(255, 102, 0);
}
#cnblogs_post_body h2{
   color: rgb(235, 235, 235);
}
#cnblogs_post_body h2:hover{
   color: rgb(255, 102, 0);
}
#cnblogs_post_body h3{
   color: rgb(235, 235, 235);
}
#cnblogs_post_body h3:hover{
   color: rgb(255, 102, 0);
}
#cnblogs_post_body h4{
   color: rgb(235, 235, 235);
}
#cnblogs_post_body h4:hover{
   color: rgb(255, 102, 0);
}
























/*jslint forin: true */

; (function ($) {
    $.fn.extend({
        mention: function (options) {
            this.opts = {
                users: [],
                delimiter: '@',
                sensitive: true,
                queryBy: 'DisplayName',
                typeaheadOpts: {}
            };

            var settings = $.extend({}, this.opts, options),
                _checkDependencies = function () {
                    if (typeof $ == 'undefined') {
                        throw new Error("jQuery is Required");
                    }
                    else {
                        if (typeof $.fn.typeahead == 'undefined') {
                            throw new Error("Typeahead is Required");
                        }
                    }
                    return true;
                },
                _extractCurrentQuery = function (query, caratPos) {
                    var i;
                    for (i = caratPos; i >= 0; i--) {
                        if (query[i] == settings.delimiter) {
                            break;
                        }
                    }
                    return query.substring(i, caratPos);
                },
                _matcher = function () {
                    this.query = this.query.toLowerCase();
                    if (this.query.indexOf(settings.delimiter) > -1) {
                        var delimiter_index = this.query.lastIndexOf(settings.delimiter);
                        var element = document.querySelector('#' + this.$element[0].id);
                        var coordinates = getCaretCoordinates(element, this.query.lastIndexOf(settings.delimiter) + 1);
                        var fontSize = getComputedStyle(element).getPropertyValue('font-size').replace('px', '');
                        this.at_top = coordinates.top + parseInt(fontSize);
                        this.at_left = coordinates.left;
                        var lastQuery = this.query.substring(delimiter_index + 1);
                        if (lastQuery.indexOf(' ') == -1 && lastQuery.length > 0) {
                            this.query = lastQuery;
                        } else {
                            if (lastQuery != '') {
                                return false;
                            }
                            this.query = '';
                        }
                        return true;
                    }
                    return false;
                },
                _updater = function (item) {
                    var data = this.textValue,
                        caratPos = this.$element[0].selectionStart,
                        i;

                    for (i = caratPos; i >= 0; i--) {
                        if (data[i] == settings.delimiter) {
                            break;
                        }
                    }
                    var replace = data.substring(i, caratPos),
                    	textBefore = data.substring(0, i),
                    	textAfter = data.substring(caratPos),
                    	data = textBefore + settings.delimiter + item + textAfter;

                    this.tempQuery = data;
                    return data;
                },
                _sorter = function (items) {
                    if (items.length && settings.sensitive) {
                        var currentUser = _extractCurrentQuery(this.query, this.$element[0].selectionStart).substring(1),
                            i, len = items.length,
                            priorities = {
                                highest: [],
                                high: [],
                                med: [],
                                low: []
                            }, finals = [];
                        if (currentUser.length == 1) {
                            for (i = 0; i < len; i++) {
                                var currentRes = items[i];

                                if ((currentRes.DisplayName[0] == currentUser)) {
                                    priorities.highest.push(currentRes);
                                }
                                else if ((currentRes.DisplayName[0].toLowerCase() == currentUser.toLowerCase())) {
                                    priorities.high.push(currentRes);
                                }
                                else if (currentRes.DisplayName.indexOf(currentUser) != -1) {
                                    priorities.med.push(currentRes);
                                }
                                else {
                                    priorities.low.push(currentRes);
                                }
                            }
                            for (i in priorities) {
                                var j;
                                for (j in priorities[i]) {
                                    finals.push(priorities[i][j]);
                                }
                            }
                            return finals;
                        }
                    }
                    return items;
                },
                _render = function (items) {
                    var that = this;
                    items = $(items).map(function (i, item) {

                        i = $(that.options.item);

                        var _linkHtml = $('<div />');

                        if (item.IconUrl) {
                            _linkHtml.append('<img class="mention_image" src="' + item.IconUrl + '">');
                        }
                        if (item.DisplayName) {
                            _linkHtml.append('<b class="mention_name">' + item.DisplayName + '</b>');
                        }

                        i.find('a').html(that.highlighter(_linkHtml.html()));
                        return i[0];
                    });

                    items.first().addClass('active');
                    this.$menu.html(items);
                    return this;
                };

            $.fn.typeahead.Constructor.prototype.render = _render;

            return this.each(function () {
                var _this = $(this);
                if (_checkDependencies()) {
                    _this.typeahead($.extend({
                        source: settings.users,
                        matcher: _matcher,
                        updater: _updater,
                        sorter: _sorter
                    }, settings.typeaheadOpts));
                }
            });
        }
    });
})(jQuery);

/* =============================================================
 * bootstrap-typeahead.js v2.3.2
 * https://twitter.github.com/bootstrap/javascript.html#typeahead
 * =============================================================
 * Copyright 2012 Twitter, Inc.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * https://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * ============================================================ */


!function ($) {

    "use strict"; // jshint ;_;


    /* TYPEAHEAD PUBLIC CLASS DEFINITION
     * ================================= */

    var Typeahead = function (element, options) {
        this.$element = $(element)
        this.options = $.extend({}, $.fn.typeahead.defaults, options)
        this.matcher = this.options.matcher || this.matcher
        this.sorter = this.options.sorter || this.sorter
        this.highlighter = this.options.highlighter || this.highlighter
        this.updater = this.options.updater || this.updater
        this.source = this.options.source;
        this.search = this.options.search;
        this.under = this.options.under || false;
        this.fixed = this.options.fixed || false;
        this.sort = this.options.sort || false;
        this.input_text = this.options.input_text || false;
        this.url = this.options.url ||  location.protocol + '//mention.cnblogs.com/mention-users';
        this.item_count = this.options.item_count || 10;
        this.textValue;
        this.at_top;
        this.at_left;
        this.$menu = $(this.options.menu)
        this.shown = false
        this.listen()
    }

    Typeahead.prototype = {

        constructor: Typeahead

    , select: function () {
        var separator=' '
        if (this.query == '') {
            separator = ''
        }
        var val = this.$menu.find('.active').text()
        this.$element
          .val(this.updater(val + separator))
          .change()
        return this.hide()
    }

    , updater: function (item) {
        return item
    }

    , show: function () {
        var pos = $.extend({}, this.$element.position(), {
            height: this.$element[0].offsetHeight
        })

        if (this.shown && this.fixed) {
            this.$menu.show()
        }
        else {
            var top, left;
            if (this.under) {
                top = pos.top + this.at_top
                left = pos.left + this.at_left
            }
            else if (this.input_text) {
                top = pos.top + pos.height
                left = pos.left + this.at_left
            }
            else {
                top = pos.top + pos.height
                left = pos.left
            }

            this.$menu
              .insertAfter(this.$element)
              .css({
                  top: top,
                  left: left
              })
              .show()
        }

        this.shown = true
        return this
    }

    , hide: function () {
        this.$menu.hide()
        this.shown = false
        return this
    }

    , lookup: function (event) {
        var that = this

        var items

        this.query = this.$element.val()
        this.textValue = this.query

        if (!this.query || this.query.length < this.options.minLength) {
            return this.shown ? this.hide() : this
        }

        if (this.matcher()) {
            if (this.search) {
                if (this.query == '') {
                    this.$menu.html('<b class="tips">输入要@的人</b>')
                    this.show()
                } else {
                    this.source = this.search(this.query)
                    items = this.source
                    return items ? this.process(items) : this
                }
            }
            else {
                if (this.query == '') {
                    this.$menu.html('<b class="tips">输入要@的人</b>')
                    this.show()
                } else {
                    $.ajax({
                        timeout: 1000, //1s
                        type: "get",
                        dataType: "json",
                        contentType: "application/json; charset=utf-8",
                        url: this.url + '?displayName=' + encodeURIComponent(this.query) + '&itemCount=' + this.item_count,
                        success: function (data) {
                            that.source = data;
                            items = that.source
                            return items ? that.process(items) : this
                        },
                        error: function (xhr) {
                            console.log(xhr)
                        }
                    });
                }
            }
        }
        else if (this.shown) {
            this.hide()
        }
    }

    , process: function (items) {
        var that = this

        if (this.sort) {
            items = this.sorter(items)
        }

        if (!items.length) {
            return this.shown ? this.hide() : this
        }

        return this.render(items.slice(0, this.options.items)).show()
    }

    , matcher: function (item) {
        return ~item.toLowerCase().indexOf(this.query.toLowerCase())
    }

    , sorter: function (items) {
        var beginswith = []
          , caseSensitive = []
          , caseInsensitive = []
          , item

        while (item = items.shift()) {
            if (!item.toLowerCase().indexOf(this.query.toLowerCase())) beginswith.push(item)
            else if (~item.indexOf(this.query)) caseSensitive.push(item)
            else caseInsensitive.push(item)
        }

        return beginswith.concat(caseSensitive, caseInsensitive)
    }

    , highlighter: function (item) {
        var query = this.textValue.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, '\\$&')
        return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) {
            return '<strong>' + match + '</strong>'
        })
    }

    , render: function (items) {
        var that = this

        items = $(items).map(function (i, item) {
            i = $(that.options.item).text(item)
            i.find('a').html(that.highlighter(item))
            return i[0]
        })

        items.first().addClass('active')
        this.$menu.html(items)
        return this
    }

    , next: function (event) {
        var active = this.$menu.find('.active').removeClass('active')
          , next = active.next()

        if (!next.length) {
            next = $(this.$menu.find('li')[0])
        }

        next.addClass('active')
    }

    , prev: function (event) {
        var active = this.$menu.find('.active').removeClass('active')
          , prev = active.prev()

        if (!prev.length) {
            prev = this.$menu.find('li').last()
        }

        prev.addClass('active')
    }

    , listen: function () {
        this.$element
          .on('focus', $.proxy(this.focus, this))
          .on('blur', $.proxy(this.blur, this))
          .on('keypress', $.proxy(this.keypress, this))
          .on('keyup', $.proxy(this.keyup, this))

        if (this.eventSupported('keydown')) {
            this.$element.on('keydown', $.proxy(this.keydown, this))
        }

        this.$menu
          .on('click', 'li', $.proxy(this.click, this))
          .on('mouseenter', 'li', $.proxy(this.mouseenter, this))
          .on('mouseleave', 'li', $.proxy(this.mouseleave, this))
    }

    , eventSupported: function (eventName) {
        var isSupported = eventName in this.$element
        if (!isSupported) {
            this.$element.setAttribute(eventName, 'return;')
            isSupported = typeof this.$element[eventName] === 'function'
        }
        return isSupported
    }

    , move: function (e) {
        if (!this.shown) return

        switch (e.keyCode) {
            case 9: // tab
            case 13: // enter
            case 27: // escape
                e.preventDefault()
                break

            case 38: // up arrow
                e.preventDefault()
                this.prev()
                break

            case 40: // down arrow
                e.preventDefault()
                this.next()
                break
        }

        e.stopPropagation()
    }

    , keydown: function (e) {
        this.suppressKeyPressRepeat = ~$.inArray(e.keyCode, [40, 38, 9, 13, 27])
        this.move(e)
    }

    , keypress: function (e) {
        if (this.suppressKeyPressRepeat) return
        this.move(e)
    }

    , keyup: function (e) {
        switch (e.keyCode) {
            case 40: // down arrow
            case 38: // up arrow
            case 16: // shift
            case 17: // ctrl
            case 18: // alt
                break

            case 9: // tab
            case 13: // enter
                if (!this.shown) return
                this.select()
                break

            case 27: // escape
                if (!this.shown) return
                this.hide()
                break

            default:
                this.lookup()
        }

        e.stopPropagation()
        e.preventDefault()
    }

    , focus: function (e) {
        this.focused = true
    }

    , blur: function (e) {
        this.focused = false
        if (!this.mousedover && this.shown) this.hide()
    }

    , click: function (e) {
        e.stopPropagation()
        e.preventDefault()
        this.select()
        this.$element.focus()
    }

    , mouseenter: function (e) {
        this.mousedover = true
        this.$menu.find('.active').removeClass('active')
        $(e.currentTarget).addClass('active')
    }

    , mouseleave: function (e) {
        this.mousedover = false
        if (!this.focused && this.shown) this.hide()
    }

    }


    /* TYPEAHEAD PLUGIN DEFINITION
     * =========================== */

    var old = $.fn.typeahead

    $.fn.typeahead = function (option) {
        return this.each(function () {
            var $this = $(this)
              , data = $this.data('typeahead')
              , options = typeof option == 'object' && option
            if (!data) $this.data('typeahead', (data = new Typeahead(this, options)))
            if (typeof option == 'string') data[option]()
        })
    }

    $.fn.typeahead.defaults = {
        source: []
    , items: 8
    , menu: '<ul class="typeahead dropdown-menu"></ul>'
    , item: '<li><a href="#"></a></li>'
    , minLength: 1
    }

    $.fn.typeahead.Constructor = Typeahead


    /* TYPEAHEAD NO CONFLICT
     * =================== */

    $.fn.typeahead.noConflict = function () {
        $.fn.typeahead = old
        return this
    }


    /* TYPEAHEAD DATA-API
     * ================== */

    $(document).on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) {
        var $this = $(this)
        if ($this.data('typeahead')) return
        $this.typeahead($this.data())
    })

}(window.jQuery);

/* from: https://github.com/component/textarea-caret-position/ */
/* jshint browser: true */

(function () {

    // The properties that we copy into a mirrored div.
    // Note that some browsers, such as Firefox,
    // do not concatenate properties, i.e. padding-top, bottom etc. -> padding,
    // so we have to do every single property specifically.
    var properties = [
      'direction',  // RTL support
      'boxSizing',
      'width',  // on Chrome and IE, exclude the scrollbar, so the mirror div wraps exactly as the textarea does
      'height',
      'overflowX',
      'overflowY',  // copy the scrollbar for IE

      'borderTopWidth',
      'borderRightWidth',
      'borderBottomWidth',
      'borderLeftWidth',
      'borderStyle',

      'paddingTop',
      'paddingRight',
      'paddingBottom',
      'paddingLeft',

      // https://developer.mozilla.org/en-US/docs/Web/CSS/font
      'fontStyle',
      'fontVariant',
      'fontWeight',
      'fontStretch',
      'fontSize',
      'fontSizeAdjust',
      'lineHeight',
      'fontFamily',

      'textAlign',
      'textTransform',
      'textIndent',
      'textDecoration',  // might not make a difference, but better be safe

      'letterSpacing',
      'wordSpacing',

      'tabSize',
      'MozTabSize'

    ];

    var isFirefox = window.mozInnerScreenX != null;

    function getCaretCoordinates(element, position) {
        // mirrored div
        var div = document.createElement('div');
        div.id = 'input-textarea-caret-position-mirror-div';
        document.body.appendChild(div);

        var style = div.style;
        var computed = window.getComputedStyle ? getComputedStyle(element) : element.currentStyle;  // currentStyle for IE < 9

        // default textarea styles
        style.whiteSpace = 'pre-wrap';
        if (element.nodeName !== 'INPUT')
            style.wordWrap = 'break-word';  // only for textarea-s

        // position off-screen
        style.position = 'absolute';  // required to return coordinates properly
        style.visibility = 'hidden';  // not 'display: none' because we want rendering

        // transfer the element's properties to the div
        properties.forEach(function (prop) {
            style[prop] = computed[prop];
        });

        if (isFirefox) {
            // Firefox lies about the overflow property for textareas: https://bugzilla.mozilla.org/show_bug.cgi?id=984275
            if (element.scrollHeight > parseInt(computed.height))
                style.overflowY = 'scroll';
        } else {
            style.overflow = 'hidden';  // for Chrome to not render a scrollbar; IE keeps overflowY = 'scroll'
        }

        div.textContent = element.value.substring(0, position);
        // the second special handling for input type="text" vs textarea: spaces need to be replaced with non-breaking spaces - https://stackoverflow.com/a/13402035/1269037
        if (element.nodeName === 'INPUT')
            div.textContent = div.textContent.replace(/\s/g, "\u00a0");

        var span = document.createElement('span');
        // Wrapping must be replicated *exactly*, including when a long word gets
        // onto the next line, with whitespace at the end of the line before (#7).
        // The  *only* reliable way to do that is to copy the *entire* rest of the
        // textarea's content into the <span> created at the caret position.
        // for inputs, just '.' would be enough, but why bother?
        span.textContent = element.value.substring(position) || '.';  // || because a completely empty faux span doesn't render at all
        div.appendChild(span);

        var coordinates = {
            top: span.offsetTop + parseInt(computed['borderTopWidth']),
            left: span.offsetLeft + parseInt(computed['borderLeftWidth'])
        };

        document.body.removeChild(div);

        return coordinates;
    }

    if (typeof module != "undefined" && typeof module.exports != "undefined") {
        module.exports = getCaretCoordinates;
    } else {
        window.getCaretCoordinates = getCaretCoordinates;
    }

}());










/*按钮*/
input[type=button] {
    height: auto !important;
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    border: 1px solid #9b59b64a;
    border-radius: 4px;
    color: #fff;
    background-color: #9b59b6cc;
    width: auto !important;
}


#sideBarMain #b/*最下端美化*/
#EntryTag a {
    margin-left: 5px;
    height: 20px;
    line-height: 20px;
    color: #333333;
    padding: 3px 14px;
    border-radius: 10px;
    margin: 2px 5px 0;
    background: #e7e7e7;
    text-decoration: none;
    font-size: 10pt;
}

#green_channel {
    display: none;
}

#author_profile {
    margin-top: 10px;
}



logCalendar>tbody>tr:nth-child(n+3) td.CalTodayDay {
    width: 25px!important;
    border-radius: 20px!important;
    background-color: #d35400!important;
    color: #fff!important;
}


#post_next_prev {
    line-height: 2.5;
    font-size: 13px;
}





/*最下端美化*/
#EntryTag a {
    margin-left: 5px;
    height: 20px;
    line-height: 20px;
    color: #333333;
    padding: 3px 14px;
    border-radius: 10px;
    margin: 2px 5px 0;
    background: #e7e7e7;
    text-decoration: none;
    font-size: 10pt;
}

#green_channel {
    display: none;
}

#author_profile {
    margin-top: 10px;
}

.author_avatar {
    border-radius: 50px;
    vertical-align: top;
    float: left;
    margin-right: 5px;
    padding-top: 5px;
    padding-left: 2px;
    border: 0;
}


#Snow{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999;
    background: rgba(255,255,240,0.1);
    pointer-events: none;
}




<!--PageBeginHtml Block Begin-->
<!--
<!DOCTYPE html>
<html lang="en">
<body>
  <head>
    <link rel="icon" href="https://i.loli.net/2018/08/23/5b7e6e30cca5e.jpg" type="image/x-icon" />
<link rel="shortcut icon" href="https://i.loli.net/2018/08/23/5b7e6e30cca5e.jpg" type="image/x-icon"/>
</head>
    <script>
        function snow() {
            //  1、定义一片雪花模板
            var flake = document.createElement('div');
            // 雪花字符 ❄❉❅❆✻✼❇❈❊✥✺
            flake.innerHTML = '❆';
            flake.style.cssText = 'position:absolute;color:#FFFAFA;';

            //获取页面的高度 相当于雪花下落结束时Y轴的位置
            var documentHieght = window.innerHeight;
            //获取页面的宽度，利用这个数来算出，雪花开始时left的值
            var documentWidth = window.innerWidth-100;

            //定义生成一片雪花的毫秒数
            var millisec = 200;
            //2、设置第一个定时器，周期性定时器，每隔一段时间（millisec）生成一片雪花；
            setInterval(function() { //页面加载之后，定时器就开始工作
                //随机生成雪花下落 开始 时left的值，相当于开始时X轴的位置
                var startLeft = Math.random() * documentWidth;

                //随机生成雪花下落 结束 时left的值，相当于结束时X轴的位置
                var endLeft = Math.random() * documentWidth;

                //随机生成雪花大小
                var flakeSize = 5 + 20 * Math.random();

                //随机生成雪花下落持续时间
                var durationTime = 10000 + 1100 * Math.random();

                //随机生成雪花下落 开始 时的透明度
                var startOpacity = 0.7 + 0.3 * Math.random();

                //随机生成雪花下落 结束 时的透明度
                var endOpacity = 0.2 + 0.2 * Math.random();

                //克隆一个雪花模板
                var cloneFlake = flake.cloneNode(true);

                //第一次修改样式，定义克隆出来的雪花的样式
                cloneFlake.style.cssText += `
                        left: ${startLeft}px;
                        opacity: ${startOpacity};
                        font-size:${flakeSize}px;
                        top:-25px;
                            transition:${durationTime}ms;
                    `;

                //拼接到页面中
                document.body.appendChild(cloneFlake);

                //设置第二个定时器，一次性定时器，
                //当第一个定时器生成雪花，并在页面上渲染出来后，修改雪花的样式，让雪花动起来；
                setTimeout(function() {
                    //第二次修改样式
                    cloneFlake.style.cssText += `
                                left: ${endLeft}px;
                                top:${documentHieght}px;
                                opacity:${endOpacity};
                            `;

                    //4、设置第三个定时器，当雪花落下后，删除雪花。
                    setTimeout(function() {
                        cloneFlake.remove();
                    }, durationTime);
                }, 0);

            }, millisec);
        }
        snow();
    </script>
</body>
</html>
-->


<link type="text/css" rel="stylesheet" href="/bundles/blog-common.css?v=-duj5vpGTntb85GJoM3iRI972XwWcI-j8zmqDzyfu2w1">



/**新鼠标样式**/
body 
{
cursor: url("https://images.cnblogs.com/cnblogs_com/zwfymqz/1099678/o_cywl.png"), auto;

}

a:hover { cursor:url("https://images.cnblogs.com/cnblogs_com/zwfymqz/1099678/o_cywl.png"),auto;}#header:before

body 
{
cursor: url("https://images.cnblogs.com/cnblogs_com/zwfymqz/1099678/o_cywl2.png"), auto;

}

a:hover { cursor:url("https://images.cnblogs.com/cnblogs_com/zwfymqz/1099678/o_cywl2.png"),auto;}#header:before




<script src="https://files.cnblogs.com/files/yjlblog/activate-power-mode.js"></script>
<canvas width="1109" height="938" style="position: fixed; top: 0px; left: 0px; pointer-events: none; z-index: 999999;"></canvas>
<script>  
POWERMODE.colorful = true;  // 冒光特效  
POWERMODE.shake = false;    // 抖动特效  
document.body.addEventListener('input', POWERMODE); // 为所有 input 标签都加上特效  
</script>

#google_ad_c1,#div-gpt-ad-1320933818841-0,#google_ad_c2,#div-gpt-ad-1320933818841-1,#ad_under_google{
display:none;
visibility：hidden;
}

<script>
function google_ga() {
    try {
        console.log('===*v*===');
        /*google_analytics(window, document, "script", "https://www.google-analytics.com/analytics.js", "ga");
        ga("create", "UA-476124-1", "auto");
        ga("send", "pageview")*/
    } catch (n) {}
}
</script>

div[id^="ad_"] {
    display: none;
}
div[class^="c_ad"] {
    display: none;
}
div[id^="under_post"] {
    display: none;
}

<script>
function google_ga() {
    try {
        console.log('===*v*===');
        /*google_analytics(window, document, "script", "https://www.google-analytics.com/analytics.js", "ga");
        ga("create", "UA-476124-1", "auto");
        ga("send", "pageview")*/
    } catch (n) {}
}
</script>