挑戰傳統評分方式:關於自訂評分模版
2019年4月27日
修订 24
核心指标
评分
445
↑ 464
↓ 19
支持率
96%
总票数 483
Wilson 95% 下界
93.9%
在相同票数下更稳健的支持率估计
争议指数
0.151
评分趋势
加载图表中...
最近修订
1 / 9
最近投票
1 / 50
2025-11-03
2025-11-02
2025-10-28
2025-10-05
2025-10-01
2025-09-24
2025-09-20
2025-09-18
2025-09-17
2025-09-16
页面源码
源码字符数 37869文字字数 4158
[[include :scp-wiki-cn:credit:start-standalone]]
**標題:**挑戰傳統評分方式:關於自訂評分模版
**作者:**[[*user Jochoi]],[*http://scp-wiki-cn.wikidot.com/zokhoi 作者頁]
阿哈哈哈哈,我又來了。我發現自己玩評分模塊和CSS玩上癮了。
[[include :scp-wiki-cn:credit:end]]
[[>]]
[[div class="ytp-rate"]]
[[div class="upbtn"]]
[[module rate]]
[[/div]]
[[module ListPages separate="no" range="."]]
[[size 13px]][[#expr (%%rating_votes%%+%%rating%%)/2]][[/size]]
[[/module]]
[[div class="downbtn"]]
[[module rate]]
[[/div]]
[[module ListPages separate="no" range="."]]
[[size 13px]][[#expr (%%rating_votes%%-%%rating%%)/2]][[/size]]
[[/module]]
[[div class="cancelbtn"]]
[[module rate]]
[[/div]]
[[include :scp-wiki-cn:ratemod:sentimentbar-arguments theme=ytp-like-border]]
[[/div]]
[[/>]]
[[toc]]
[[=]]
+ 前言1:重要提示
[[/=]]
[[size 130%]]此文章的內容希望鼓勵讀者無須被傳統的評分模塊限制,並為自訂評分模版提供如何實現的流程指導。
但是,很多時候花里胡哨的評分模版實際上既並無必要,亦不能為一篇寫得差的文章加分。
**而更重要的是,永不要讓你的精力消耗在自訂評分模版而非你的文章上,永不要讓你的自訂評分模版喧賓奪主。**
**聲明:使用以下內容需要你自己承擔所帶來的風險。如果你因為使用自訂評分模版而被down、被噴,本人概不負責。**[[/size]]
[[=]]
+ 前言2:評分模塊?那是什麼?
[[/=]]
評分模塊,相信我們每個人都會熟悉。就是以下這個玩意。
[[code]]
[[module rate]]
[[/code]]
[[module rate]]
評分模塊是wikidot自帶、用於已開放評分的網站的模塊。在不同的wikidot網站,視乎站主的設定,評分可以有以下三種模式:
* +,–以及X,也就是SCP基金會使用的模式。
* +以及X
* 五星,也就是[*http://rpc-wiki-cn.wikidot.com RPC管理局]使用的模式。
在此篇文章中,我們只談論第一種模式。
不覺得一直都只看著這個排版太過沉悶了嗎?即使有著各版式主題,那也只是更改模塊的顏色而已。是不是很想改一下這個評分模組,讓你的頁面更有活力呢?
[[=]]
+ 第一步:了解評分模塊的結構
[[/=]]
想要自訂評分模塊,我們得先來了解一下評分模塊在html內的表達:
[[collapsible show="+ 打開代碼" hide ="– 收起代碼"]]
[[code]]
<div class="page-rate-widget-box">
<span class="rate-points">评分: <span class="number prw54353">0</span></span>
<span class="rateup btn btn-default"><a title="我喜欢" href="javascript:;" onclick="WIKIDOT.modules.PageRateWidgetModule.listeners.rate(event, 1)">+</a></span>
<span class="ratedown btn btn-default"><a title="我不喜欢" href="javascript:;" onclick="WIKIDOT.modules.PageRateWidgetModule.listeners.rate(event, -1)">–</a></span>
<span class="cancel btn btn-default"><a title="取消我的投票" href="javascript:;" onclick="WIKIDOT.modules.PageRateWidgetModule.listeners.cancelVote(event)">x</a></span></div></div>
</div>
[[/code]]
[[/collapsible]]
我們可以看見,上面評分模塊的構成是這樣的:
* ##26ef66|div##, class 為 "page-rate-widget-box"
* ##26ef66|span##, class 為 "rate-points", 內容為"评分: "[[footnote]]" "為HTML字元碼 不換行空格,此處用於禁止自動換行。[[/footnote]]
* ##26ef66|span##, class 為"number" 和 "prw54353", 內容為該頁面分數
* ##26ef66|span##, class 為 "rateup", "btn" 和 "btn-default"
* ##26ef66|a##, 內容為"+",游標掃過時會顯示"我喜欢"。實際連結到頁面內的JavaScript JQuery,當被點擊時會進行"+1"的動作
* ##26ef66|span##, class 為 "ratedown", "btn" 和 "btn-default"
* ##26ef66|a##, 內容為"–"[[footnote]]"–"為HTML字元碼,對應en dash"–"。多數鍵盤上沒有直接輸入en dash的鍵。[[/footnote]],游標掃過時會顯示"我不喜欢"。實際連結到頁面內的JavaScript JQuery,當被點擊時會進行"-1"的動作
* ##26ef66|span##, class 為 "cancel", "btn" 和 "btn-default"
* ##26ef66|a##, 內容為"X",游標掃過時會顯示"取消我的投票"。實際連結到頁面內的JavaScript JQuery,當被點擊時會進行取消評分的動作
另外,從JQuery代碼裡得知,當頁面自動刷新評分時,class 為 "prw54353" 的內容會自動更換為 class "prw54354" 的內容。
知道了每個div,span 和 a 的 class,對於我們撰寫 CSS 代碼將是非常重要的幫助。
[[=]]
+ 第二步:構思自訂評分模塊的排版,以及預備材料
[[/=]]
那麼,了解了評分模塊的結構後,我們就需要開始構思我們所想要自訂評分模塊的排版了。
++ 例1:
[[include component:image-block-base name=http://scp-wiki-cn.wikidot.com/local--files/rating-against-traditions/youtube-sentiment.png|caption=這個評分模版好像很好看![[footnote]]YouTube的評分模版[[/footnote]]|width=300px|link=#|align=center]]
**以下,我們將以例一的內容進行評分模塊的更改,僅作參考之用。如果你想要達到的效果與此不同,請根據實際情況調整。**
+++ 評分模版分析(從左到右,上到下):
* up按鈕:灰色的向上大拇指圖案
* up人數
* down按鈕:灰色的向下大拇指圖案
* down人數
* 底部邊框:評分佔率:深灰色up條,淺灰色down條
但是,你所選擇的排版,未必會完全符合SCP基金會的文章評分模塊要求。因此,我們要作出少許修改:
* up按鈕:灰色的向上大拇指圖案
* up人數
* down按鈕:灰色的向下大拇指圖案
* down人數
* ##blue|取消按鈕##
* 底部邊框:評分佔率:##blue|藍色up條##,淺灰色down條
嗯,這樣好多了。
+++ 預備材料
接下來,我們需要準備材料。視乎你想要如何實現該評分模版,你可能會需要準備一張或多張圖片。不過我的建議是,儘量使用越少圖片越好,能用文字代替就不要用圖片。這是因為加載圖片需要時間,加載大量圖片也就需要大量時間,這會影響讀者的觀感。
//例1a,1b: 寬30px 高30px// [[image http://scp-wiki-cn.wikidot.com/local--files/ratemod:ytp-like-style/up-gray.png]] [[image http://scp-wiki-cn.wikidot.com/local--files/ratemod:ytp-like-style/down-gray.png]]
要實現例1的效果,其實只需要預備其中一個方向的大拇指的圖片(另一張圖使用該圖片的180度旋轉),但是要使用該辦法會需要更繁複的代碼,故此我預備了兩張圖片。
[[=]]
+ 第三步:使用代碼來實現該模版
[[/=]]
++ 碼代碼前需知
首先,Wikidot本身並不支持直接更改評分模塊內容。然後,如果想要使用Wikidot代碼重製評分模塊,Wikidot會將 a 內的JQuery代碼過濾,使得該代碼並不能起效。因此,我們只能夠透過將評分模塊以 div 包含並標上 class 來實現更改獨立評分模塊。
//例1c://
[[code]]
[[div class="sample-one-c"]]
[[module rate]]
[[/div]]
[[/code]]
備註:這個class不應與任何已存在的class名字重複。
++ 真正碼代碼
+++ 將各按鈕分割成獨立部份
因為在我們想要達到的效果中,up按鈕和down按鈕之間、down按鈕和取消按鈕之間都有字,所以我們必須將三個按鈕獨立分開,並定義各自的class。
//例1d://
[[code]]
[[div class="upbtn"]] [!-- 此處我們想要只顯示up按鈕 --]
[[module rate]]
[[/div]]
[[div class="downbtn"]] [!-- 此處我們想要只顯示down按鈕 --]
[[module rate]]
[[/div]]
[[div class="cancelbtn"]] [!-- 此處我們想要只顯示取消按鈕 --]
[[module rate]]
[[/div]]
[[/code]]
+++ 各評分模塊移除所有一般效果及設為行內元素
//例1f://
[[code]]
[[module css]]
/* 選擇所有帶 "upbtn"、"downbtn" 或 "cancelbtn" class 的元素,並設為行內元素 */
.upbtn,
.downbtn,
.cancelbtn {
display: inline-block;
}
/* 選擇所有帶 "upbtn"、"downbtn" 或 "cancelbtn" class 的元素內的 "page-rate-widget-box" */
.upbtn .page-rate-widget-box,
.downbtn .page-rate-widget-box,
.cancelbtn .page-rate-widget-box {
display: inline-block;
/* 將多個評分模塊設為行內元素 */
border: 0 !important;
box-shadow: none !important;
margin: 0 !important;
/* 將評分模塊的所有邊框、陰影、邊界分隔移除,並強制使用該屬性 */
}
[[/module]]
[[/code]]
+++ 定義各按鈕的CSS
++++ 定義按鈕的顯示
//例1g-1://
[[code]]
[[module css]]
/* 前略 */
.upbtn *,
.downbtn *,
.cancelbtn * {
display: none;
}
.upbtn .rateup,
.downbtn .ratedown,
.cancelbtn .cancel {
display: inline-block !important;
}
[[/module]]
[[/code]]
首先,我們想要將upbtn內的評分模塊除up按鈕外清除;downbtn內的評分模塊除down按鈕外清除;cancelbtn內的評分模塊除取消按鈕外清除。其中一個做法為將所有元素設為不顯示,然後另外將rateup,ratedown,cancel設為顯示。
採用此方法而非單獨選擇不想顯示的元素來設定不顯示的原因是,後面我們自訂各按鈕的時候亦會需要選擇各按鈕的元素來進行定義,所以此方法能夠更省略代碼量。若你不想這樣做,以下是單獨選擇元素來設定不顯示的代碼:
[[collapsible show="+ 打開代碼" hide ="– 收起代碼"]]
//例1g-2://
[[code]]
[[module css]]
/* 前略 */
/* 單獨選擇各元素並定義為不顯示 */
.upbtn .rate-points,
.upbtn .ratedown,
.upbtn .cancel,
.downbtn .rate-points,
.downbtn .rateup,
.downbtn .cancel,
.cancelbtn .rate-points,
.cancelbtn .rateup,
.cancelbtn .ratedown {
display: none;
}
/* 但是此後以至下一步仍然需要定義以下三個元素的屬性 */
.upbtn .rateup,
.downbtn .ratedown,
.cancelbtn .cancel {
display: inline-block;
}
[[/module]]
[[/code]]
[[/collapsible]]
++++ 定義按鈕的顯示內容
接下來我們需要定義我們按鈕的顯示內容。之前我們準備了例1a,1b的圖片,網址為
http://scp-wiki-cn.wikidot.com/local--files/ratemod:ytp-like-style/up-gray.png
http://scp-wiki-cn.wikidot.com/local--files/ratemod:ytp-like-style/down-gray.png
//例1h://
[[code]]
[[module css]]
/* 前略 */
/* 需要定義上一步最後所選擇的三個元素的更多屬性 */
.upbtn .rateup,
.downbtn .ratedown,
.cancelbtn .cancel {
display: inline-block;
border: 0;
background: transparent !important;
/* 將邊框、背景屬性去掉 */
border-radius: 5px;
width: 30px;
height: 30px;
text-align: center;
/* 設定圓角邊框半徑、寬和高、文字左右排列 */
}
/* 定義評分連接的屬性 */
.upbtn .rateup a,
.downbtn .ratedown a,
.cancelbtn .cancel a {
display: inline-block;
padding: 0;
margin: 0;
/* 把邊界本身、內部文字與邊界的距離去掉 */
border-radius: 5px;
width: 30px;
height: 30px;
vertical-align: text-top;
/* 設定圓角邊框半徑、寬和高、文字上下排列 */
}
.upbtn .rateup a {
font-size: 0;
/* 將 "+" 字設為0大小。*/
background: url(http://scp-wiki-cn.wikidot.com/local--files/ratemod:ytp-like-style/up-gray.png) no-repeat !important;
/* 設定背景圖為向上的大拇指 */
}
.downbtn .ratedown a {
font-size: 0;
/* 將 "–" 字設為0大小。*/
background: url(http://scp-wiki-cn.wikidot.com/local--files/ratemod:ytp-like-style/down-gray.png) no-repeat !important;
/* 設定背景圖為向下的大拇指 */
}
.cancelbtn .cancel a {
font-weight: bold;
font-size: 25px;
color: #aaa !important;
/* 設定 "X" 字為粗體,25px以及灰色 */
}
/* 定義游標於按鈕上懸浮時的屬性 */
.upbtn .rateup a:hover,
.downbtn .ratedown a:hover,
.cancelbtn .cancel a:hover {
border-radius: 5px;
width: 30px;
height: 30px;
background-color: transparent !important;
/* 設定游標於按鈕上懸浮時的圓角邊框半徑、寬和高、背景透明 */
}
[[/module]]
[[/code]]
++++ 定義游標於按鈕上懸浮的效果
沒有動畫的按鈕怎麼能算是完整呢?所以,我們需要設置游標於按鈕上懸浮的效果。
本例使用濾鏡來改變按鈕顏色,可以參考[*http://scp-wiki-cn.wikidot.com/esoteric-syntax#toc19 此處]。
//例1i://
[[code]]
[[module css]]
/* 前略 */
.upbtn .rateup.btn a:hover,
.downbtn .ratedown.btn a:hover {
-webkit-filter: grayscale(100%) brightness(50%) sepia(100%) hue-rotate(-180deg) saturate(700%) contrast(0.8);
filter: grayscale(100%) brightness(50%) sepia(100%) hue-rotate(-180deg) saturate(700%) contrast(0.8);
/* 設定游標於up,down按鈕上懸浮時變成藍色 */
}
.cancelbtn .cancel.btn a:hover {
-webkit-filter: invert(40%) grayscale(100%) brightness(60%) sepia(100%) hue-rotate(-50deg) saturate(400%) contrast(2);
filter: grayscale(100%) brightness(60%) sepia(100%) hue-rotate(-50deg) saturate(600%) contrast(0.8);
/* 設定游標於取消按鈕上懸浮時變成紅色 */
}
[[/module]]
[[/code]]
+++ 設置up、down人數以及底部評分佔比條
此時,各評分按鈕已經完成,但我們想要在按鈕旁顯示up、down人數,以及在整個模版的底部上顯示評分佔比。在這個階段,由於需要實時更新佔比條,單純的CSS不能滿足我們的需求。此處可以參考我先前所做的[*http://scp-wiki-cn.wikidot.com/sentimentbar:rate 評分佔比條]模式,但是要作出一些改動,將佔比條上的文字去掉和調整高度模仿邊框。
計算up、down的公式如下(以ListPages模塊實現):
[[module ListPages range="."]]
Up 人數:@@[[#expr (%%@@rating_votes%%+%%@@rating%%)/2]]@@ = [[#expr (%%rating_votes%%+%%rating%%)/2]]
Down 人數:@@[[#expr (%%@@rating_votes%%-%%@@rating%%)/2]]@@ = [[#expr (%%rating_votes%%-%%rating%%)/2]]
[[/module]]
對排版作出調整後,我們得到如下代碼:
//例1j://
[[div class="code"]]
{{@@[[div class="ytp-rate"]] [!-- 此div用作佔比條的載體 --]@@}}
{{@@[[div class="upbtn"]]@@}}
{{@@[[module rate]]@@}}
{{@@[[/div]]@@}}
{{@@[[module ListPages separate="no" range="."]]@@}}
{{@@[[size 13px]][[#expr (%%rating_votes%%+%%rating%%)/2]][[/size]]@@}}
{{@@[[/module]]@@}}
{{@@[[div class="downbtn"]]@@}}
{{@@[[module rate]]@@}}
{{@@[[/div]]@@}}
{{@@[[module ListPages separate="no" range="."]]@@}}
{{@@[[size 13px]][[#expr (%%rating_votes%%-%%rating%%)/2]][[/size]]@@}}
{{@@[[/module]]@@}}
{{@@[[div class="cancelbtn"]]@@}}
{{@@[[module rate]]@@}}
{{@@[[/div]]@@}}
{{@@[[include :scp-wiki-cn:ratemod:sentimentbar-arguments theme=ytp-like-border]]@@}}
{{@@[[/div]]@@}}
[[/div]]
另外,由於ListPages模塊的某些特性,我們需要將其設為行內元素。同時,ytp-rate這個div本身也需要設為行內元素。再者,我們需要將ytp-rate內部的元素上下置中。我們可以將這幾個定義與先前的行內元素定義放在一起:
//例1k://
[[code]]
[[module css]]
.upbtn,
.downbtn,
.cancelbtn,
.ytp-rate,
.ytp-rate .list-pages-box,
.ytp-rate .list-pages-box p {
display:inline-block !important;
vertical-align: middle;
}
/* 後略 */
[[/module]]
[[/code]]
然後是佔比條本身的CSS:
//例1l://
[[code]]
[[module css]]
.ytp-like-border {
display:block;
/* 確保佔比條於自己單獨一行上 */
height: 2px !important;
/* 高度設為2像素,模仿邊框 */
}
.ytp-like-border .neutralbar {
height: 2px !important;
background-color: #ccc;
/* 中立條顏色 */
font-size: 0;
/* 中立條文字調0大小 */
}
.ytp-like-border .downbar-base {
height: 2px !important;
background-color: #ccc;
/* 差評條顏色 */
}
.ytp-like-border .downbar-text {
height: 2px !important;
font-size:0;
/* 差評條文字調0大小 */
padding: 0 !important;
/* 去掉文字內襯厚度 */
}
.ytp-like-border .upbar {
height: 2px !important;
background-color: #167ac6;
/* 好評條顏色 */
font-size: 0;
/* 好評條文字調0大小 */
padding: 0 !important;
/* 去掉文字內襯厚度 */
}
.ytp-rate > .cancelbtn + .list-pages-box,
.ytp-rate > .list-pages-box + .list-pages-box {
width: 100%;
/* 因為ListPages模塊的結構問題,我們需要手動將最後佔比條的兩個list-pages-box寬度設為上層元素的100% */
}
[[/module]]
[[/code]]
+++ 將所有代碼整合
這麼多的代碼,我們需要將其整合,方便自己使用。
//例1m://
[[collapsible show="+ 此代碼為實際評分模版" hide="- 此代碼為實際評分模版:"]]
[[div class="code"]]
{{@@[[div class="ytp-rate"]]@@}}
{{@@[[div class="upbtn"]]@@}}
{{@@[[module rate]]@@}}
{{@@[[/div]]@@}}
{{@@[[module ListPages separate="no" range="."]]@@}}
{{@@[[size 13px]][[#expr (%%rating_votes%%+%%rating%%)/2]][[/size]]@@}}
{{@@[[/module]]@@}}
{{@@[[div class="downbtn"]]@@}}
{{@@[[module rate]]@@}}
{{@@[[/div]]@@}}
{{@@[[module ListPages separate="no" range="."]]@@}}
{{@@[[size 13px]][[#expr (%%rating_votes%%-%%rating%%)/2]][[/size]]@@}}
{{@@[[/module]]@@}}
{{@@[[div class="cancelbtn"]]@@}}
{{@@[[module rate]]@@}}
{{@@[[/div]]@@}}
{{@@[[include :scp-wiki-cn:ratemod:sentimentbar-arguments theme=ytp-like-border]]@@}}
{{@@[[/div]]@@}}
[[/div]]
[[/collapsible]]
[[collapsible show="+ 此代碼放置於內容任何一處" hide ="– 此代碼放置於內容任何一處:"]]
[[code]]
[[module css]]
.upbtn,
.downbtn,
.cancelbtn,
.ytp-rate,
.ytp-rate .list-pages-box,
.ytp-rate .list-pages-box p {
display:inline-block !important;
vertical-align: middle;
}
.upbtn .page-rate-widget-box,
.downbtn .page-rate-widget-box,
.cancelbtn .page-rate-widget-box {
display: inline-block;
border: 0 !important;
box-shadow: none !important;
margin: 0 !important;
}
.upbtn *,
.downbtn *,
.cancelbtn * {
display: none;
}
.upbtn .rateup,
.downbtn .ratedown,
.cancelbtn .cancel {
display: inline-block;
border: 0;
background: transparent !important;
border-radius: 5px;
width: 30px;
height: 30px;
text-align: center;
}
.upbtn .rateup a,
.downbtn .ratedown a,
.cancelbtn .cancel a {
display: inline-block;
padding: 0;
margin: 0;
border-radius: 5px;
width: 30px;
height: 30px;
vertical-align: text-top;
}
.upbtn .rateup a {
font-size: 0;
background: url(http://scp-wiki-cn.wikidot.com/local--files/ratemod:ytp-like-style/up-gray.png) no-repeat !important;
}
.downbtn .ratedown a {
font-size: 0;
background: url(http://scp-wiki-cn.wikidot.com/local--files/ratemod:ytp-like-style/down-gray.png) no-repeat !important;
}
.cancelbtn .cancel a {
font-weight: bold;
font-size: 25px;
color: #aaa !important;
}
.upbtn .rateup a:hover,
.downbtn .ratedown a:hover,
.cancelbtn .cancel a:hover {
border-radius: 5px;
width: 30px;
height: 30px;
background-color: transparent !important;
}
.upbtn .rateup.btn a:hover,
.downbtn .ratedown.btn a:hover {
-webkit-filter: grayscale(100%) brightness(50%) sepia(100%) hue-rotate(-180deg) saturate(700%) contrast(0.8);
filter: grayscale(100%) brightness(50%) sepia(100%) hue-rotate(-180deg) saturate(700%) contrast(0.8);
}
.cancelbtn .cancel.btn a:hover {
-webkit-filter: invert(40%) grayscale(100%) brightness(60%) sepia(100%) hue-rotate(-50deg) saturate(400%) contrast(2);
filter: grayscale(100%) brightness(60%) sepia(100%) hue-rotate(-50deg) saturate(600%) contrast(0.8);
}
.ytp-like-border {
display:block;
height: 2px !important;
}
.ytp-like-border .neutralbar {
height: 2px !important;
background-color: #ccc;
font-size: 0;
}
.ytp-like-border .downbar-base {
height: 2px !important;
background-color: #ccc;
}
.ytp-like-border .downbar-text {
height: 2px !important;
font-size:0;
padding: 0 !important;
}
.ytp-like-border .upbar {
height: 2px !important;
background-color: #167ac6;
font-size: 0;
padding: 0 !important;
}
.ytp-rate > .cancelbtn + .list-pages-box,
.ytp-rate > .list-pages-box + .list-pages-box {
width: 100%;
}
[[/module]]
[[/code]]
[[/collapsible]]
++ 實際效果
碼了這麼多代碼,我們是時候看看實際效果了。
[[div class="ytp-rate"]]
[[div class="upbtn"]]
[[module rate]]
[[/div]]
[[module ListPages separate="no" range="."]]
[[size 13px]][[#expr (%%rating_votes%%+%%rating%%)/2]][[/size]]
[[/module]]
[[div class="downbtn"]]
[[module rate]]
[[/div]]
[[module ListPages separate="no" range="."]]
[[size 13px]][[#expr (%%rating_votes%%-%%rating%%)/2]][[/size]]
[[/module]]
[[div class="cancelbtn"]]
[[module rate]]
[[/div]]
[[include :scp-wiki-cn:ratemod:sentimentbar-arguments theme=ytp-like-border]]
[[/div]]
評分後是不能即時看到更新的,請重新載入頁面!
[[module css]]
.upbtn,
.downbtn,
.cancelbtn,
.ytp-rate,
.ytp-rate .list-pages-box,
.ytp-rate .list-pages-box p {
display:inline-block !important;
vertical-align: middle;
}
.upbtn .page-rate-widget-box,
.downbtn .page-rate-widget-box,
.cancelbtn .page-rate-widget-box {
display: inline-block;
border: 0 !important;
box-shadow: none !important;
margin: 0 !important;
}
.upbtn *,
.downbtn *,
.cancelbtn * {
display: none;
}
.upbtn .rateup,
.downbtn .ratedown,
.cancelbtn .cancel {
display: inline-block;
border: 0;
background: transparent !important;
border-radius: 5px;
width: 30px;
height: 30px;
text-align: center;
}
.upbtn .rateup a,
.downbtn .ratedown a,
.cancelbtn .cancel a {
display: inline-block;
padding: 0;
margin: 0;
border-radius: 5px;
width: 30px;
height: 30px;
vertical-align: text-top;
}
.upbtn .rateup a {
font-size: 0;
background: url(http://scp-wiki-cn.wikidot.com/local--files/ratemod:ytp-like-style/up-gray.png) no-repeat !important;
}
.downbtn .ratedown a {
font-size: 0;
background: url(http://scp-wiki-cn.wikidot.com/local--files/ratemod:ytp-like-style/down-gray.png) no-repeat !important;
}
.cancelbtn .cancel a {
font-weight: bold;
font-size: 25px;
color: #aaa !important;
}
.upbtn .rateup a:hover,
.downbtn .ratedown a:hover,
.cancelbtn .cancel a:hover {
border-radius: 5px;
width: 30px;
height: 30px;
background-color: transparent !important;
}
.upbtn .rateup.btn a:hover,
.downbtn .ratedown.btn a:hover {
-webkit-filter: grayscale(100%) brightness(50%) sepia(100%) hue-rotate(-180deg) saturate(700%) contrast(0.8);
filter: grayscale(100%) brightness(50%) sepia(100%) hue-rotate(-180deg) saturate(700%) contrast(0.8);
}
.cancelbtn .cancel.btn a:hover {
-webkit-filter: invert(40%) grayscale(100%) brightness(60%) sepia(100%) hue-rotate(-50deg) saturate(400%) contrast(2);
filter: grayscale(100%) brightness(60%) sepia(100%) hue-rotate(-50deg) saturate(600%) contrast(0.8);
}
.ytp-like-border {
display:block;
height: 2px !important;
clear:both;
}
.ytp-like-border .neutralbar {
height: 2px !important;
background-color: #ccc;
font-size: 0;
padding: 0 !important;
}
.ytp-like-border .downbar-base {
height: 2px !important;
background-color: #ccc;
}
.ytp-like-border .downbar-text {
height: 2px !important;
font-size:0;
padding: 0 !important;
}
.ytp-like-border .upbar {
height: 2px !important;
background-color: #167ac6;
font-size: 0;
padding: 0 !important;
}
.ytp-rate > .cancelbtn + .list-pages-box,
.ytp-rate > .list-pages-box + .list-pages-box {
width: 100%;
}
[[/module]]
[[=]]
+ 第四步:將該評分模版用於你的文章內
[[/=]]
恭喜,你已經完成了你自製自訂評分模版的過程了!現在,你需要將其用於你的文章內。
[[collapsible show="+ 應用例子" hide="- 應用例子"]]
[*http://scp-wiki-cn.wikidot.com/ratemod:ytp-like-sample 樣版頁]
[[image http://scp-wiki-cn.wikidot.com/local--files/rating-against-traditions/ytpsample.png]]
[[/collapsible]]
如需使用,此為該自訂評分模版引用代碼
[[div class="code"]]
{{@@[[include :scp-wiki-cn:ratemod:ytp-like]]@@}}
[[/div]]
[[=]]
+ Encore:更多代碼,實現更強大的效果
[[/=]]
[[include :scp-wiki-cn:component:coltop show=+ 我們是泰坦。|hide=- 強大有力的泰坦。]]
[[include :scp-wiki-cn:component:coltop show= + 評分旋鈕|hide= - 評分旋鈕]]
[[module css]]
/* Spin Out Rate */
.rateWrap {
position: relative;
float: right;
width: 6em;
height: 6em;
border-radius: 0 0 0 100%;
overflow: hidden;
z-index: 9;
-webkit-transition-delay: .8s;
-moz-transition-delay: .8s;
-ms-transition-delay: .8s;
-o-transition-delay: .8s;
transition-delay: .8s;
-webkit-transition-property: width, height;
-moz-transition-property: width, height;
-ms-transition-property: width, height;
-o-transition-property: width, height;
transition-property: width, height;
}
@media (min-width: 1041px) {
.rateWrap {
right: calc(50vw - 520px);
}
}
.rateWrap:hover {
width: 24em;
height: 24em;
-webkit-transition-delay: 0;
-moz-transition-delay: 0;
-ms-transition-delay: 0;
-o-transition-delay: 0;
transition-delay: 0;
}
.rateWrap ul {
margin: 0;
padding: 0;
list-style: none;
position: absolute;
right: 0;
top: 0;
width: 0;
height: 0;
}
.rateWrap ul li {
position: absolute;
right: 0;
top: 0;
border-radius: 0 0 0 100%;
}
.rateWrap ul li ul li {
position: absolute;
right: 0;
top: 0;
border-radius: 100% 0 0 0;
}
.rateWrap ul li .ratedit {
display: block;
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 100%;
}
.rateWrap > ul > li {
width: 6em;
height: 6em;
background-color: #404040;
color: #fff;
cursor: pointer;
-webkit-transition: .3s ease-in-out;
-moz-transition: .3s ease-in-out;
-ms-transition: .3s ease-in-out;
-o-transition: .3s ease-in-out;
transition: .3s ease-in-out;
-webkit-transition-delay: .5s;
-moz-transition-delay: .5s;
-ms-transition-delay: .5s;
-o-transition-delay: .5s;
transition-delay: .5s;
}
.rateWrap:hover > ul > li {
width: 11em;
height: 11em;
-webkit-transition-delay: 0;
-moz-transition-delay: 0;
-ms-transition-delay: 0;
-o-transition-delay: 0;
transition-delay: 0;
}
.rateWrap > ul > li > div.fa {
position: absolute;
right: 0;
top: 0;
width: 1.2em;
height: 1.2em;
font-size: 3em;
-webkit-transition: .3s ease-in-out;
-moz-transition: .3s ease-in-out;
-ms-transition: .3s ease-in-out;
-o-transition: .3s ease-in-out;
transition: .3s ease-in-out;
-webkit-transition-delay: .5s;
-moz-transition-delay: .5s;
-ms-transition-delay: .5s;
-o-transition-delay: .5s;
transition-delay: .5s;
}
.rateWrap:hover > ul > li > div.fa {
font-size: 5.5em;
-webkit-transition-delay: 0;
-moz-transition-delay: 0;
-ms-transition-delay: 0;
-o-transition-delay: 0;
transition-delay: 0;
}
.rateWrap > ul ul {
z-index: -1;
}
.rateWrap > ul ul li {
-webkit-transform-origin: right bottom;
-moz-transform-origin: right bottom;
-ms-transform-origin: right bottom;
-o-transform-origin: right bottom;
transform-origin: right bottom;
-webkit-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-ms-transform: rotate(5deg);
-o-transform: rotate(5deg);
transform: rotate(5deg);
-webkit-transition: .5s ease-in-out;
-moz-transition: .5s ease-in-out;
-ms-transition: .5s ease-in-out;
-o-transition: .5s ease-in-out;
transition: .5s ease-in-out;
}
.rateWrap:hover > ul ul li {
-webkit-transition-delay: .3s;
-moz-transition-delay: .3s;
-ms-transition-delay: .3s;
-o-transition-delay: .3s;
transition-delay: .3s;
}
.rateWrap > ul > li > ul > li:nth-of-type(1) {
width: 24em;
height: 24em;
top: -24em;
background-color: #a3a3a7;
z-index: 8;
}
.rateWrap > ul > li > ul > li:nth-of-type(1) > a {
border-color: #a3a3a7;
}
.rateWrap:hover > ul > li > ul > li:nth-of-type(1) {
-webkit-transform: rotate(-18deg);
-moz-transform: rotate(-18deg);
-ms-transform: rotate(-18deg);
-o-transform: rotate(-18deg);
transform: rotate(-18deg);
}
.rateWrap > ul > li > ul > li:nth-of-type(2) {
width: 21.5em;
height: 21.5em;
top: -21.5em;
background-color: #b4b4b8;
z-index: 7;
}
.rateWrap > ul > li > ul > li:nth-of-type(2) > a {
border-color: #b4b4b8;
}
.rateWrap:hover > ul > li > ul > li:nth-of-type(2) {
-webkit-transform: rotate(-36deg);
-moz-transform: rotate(-36deg);
-ms-transform: rotate(-36deg);
-o-transform: rotate(-36deg);
transform: rotate(-36deg);
}
.rateWrap > ul > li > ul > li:nth-of-type(3) {
width: 19.5em;
height: 19.5em;
top: -19.5em;
background-color: #c5c5c9;
z-index: 6;
}
.rateWrap > ul > li > ul > li:nth-of-type(3) > a {
border-color: #c5c5c9;
}
.rateWrap:hover > ul > li > ul > li:nth-of-type(3) {
-webkit-transform: rotate(-54deg);
-moz-transform: rotate(-54deg);
-ms-transform: rotate(-54deg);
-o-transform: rotate(-54deg);
transform: rotate(-54deg);
}
.rateWrap > ul > li > ul > li:nth-of-type(4) {
width: 18em;
height: 18em;
top: -18em;
background-color: #d6d6da;
z-index: 5;
}
.rateWrap:hover > ul > li > ul > li:nth-of-type(4) {
-webkit-transform: rotate(-72deg);
-moz-transform: rotate(-72deg);
-ms-transform: rotate(-72deg);
-o-transform: rotate(-72deg);
transform: rotate(-72deg);
}
.rateWrap > ul > li > ul > li:nth-of-type(4) > a {
border-color: #d6d6da;
}
.rateWrap > ul > li > ul > li:nth-of-type(5) {
width: 17em;
height: 17em;
top: -17em;
background-color: #e7e7eb;
z-index: 4;
}
.rateWrap > ul > li > ul > li:nth-of-type(5) a {
border-color: #e7e7eb;
}
.rateWrap:hover > ul > li > ul > li:nth-of-type(5) {
-webkit-transform: rotate(-90deg);
-moz-transform: rotate(-90deg);
-ms-transform: rotate(-90deg);
-o-transform: rotate(-90deg);
transform: rotate(-90deg);
}
.rateWrap > ul ul a:hover {
border-color: var(--dark-color) !important;
}
.rateWrap ul li .ratedit .page-rate-widget-box {
display: block;
position: absolute;
border: 0 !important;
box-shadow: none !important;
margin: 0 !important;
width: 100%;
height: 100%;
font-size: 1.4em;
}
.rateWrap .ratedit .page-rate-widget-box * {
display: none;
}
.rateWrap .ratedit.list-pages-box {
height: 100%;
}
.rateWrap:hover ul li .ratedit.sentiment {
-webkit-transition: .3s ease-in-out;
-moz-transition: .3s ease-in-out;
-ms-transition: .3s ease-in-out;
-o-transition: .3s ease-in-out;
transition: .3s ease-in-out;
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-ms-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
}
.rateWrap .ratedit.spinout-pts .rate-points {
display: inline-block !important;
position: absolute;
border: 0;
left: 0.5em;
bottom: 1em;
background: transparent !important;
}
.rateWrap .ratedit.spinout-pts .rate-points .number { display: inline-block;}
.rateWrap .ratedit.spinout-up .rateup,
.rateWrap .ratedit.spinout-down .ratedown,
.rateWrap .ratedit.spinout-cancel .cancel {
display: inline-block !important;
position: absolute;
border: 0;
font-weight: bold;
width: 90%;
height: 90%;
background: transparent !important;
}
.rateWrap .ratedit.spinout-up .rateup,
.rateWrap .ratedit.spinout-down .ratedown {
left: 0.7em;
bottom: 0.2em;
}
.rateWrap .ratedit.spinout-cancel .cancel {
left: 0;
bottom: 0;
}
.rateWrap .ratedit.spinout-up .rateup a,
.rateWrap .ratedit.spinout-down .ratedown a,
.rateWrap .ratedit.spinout-cancel .cancel a {
display: inline-block !important;
position: absolute;
border: 0;
width: 100%;
height: 20%;
left: 0;
bottom: 0;
color: #FFF !important;
font-size: 30px;
text-align: left;
background: transparent !important;
padding-left: .8em;
border-radius: 100% 0 0 0;
text-decoration: none;
-webkit-transition: .1s ease-in-out;
-moz-transition: .1s ease-in-out;
-ms-transition: .1s ease-in-out;
-o-transition: .1s ease-in-out;
transition: .1s ease-in-out;
}
.rateWrap .ratedit.spinout-up .rateup a:hover,
.rateWrap .ratedit.spinout-down .ratedown a:hover {
-webkit-filter: grayscale(100%) brightness(50%) sepia(100%) hue-rotate(-180deg) saturate(700%) contrast(0.8);
filter: grayscale(100%) brightness(50%) sepia(100%) hue-rotate(-180deg) saturate(700%) contrast(0.8);
}
.rateWrap .ratedit.spinout-cancel .cancel a:hover {
-webkit-filter: invert(40%) grayscale(100%) brightness(60%) sepia(100%) hue-rotate(-50deg) saturate(400%) contrast(2);
filter: grayscale(100%) brightness(60%) sepia(100%) hue-rotate(-50deg) saturate(600%) contrast(0.8);
}
.rateWrap .ratedit .list-pages-box {
display: inline-block !important;
position: relative;
border: 0;
background: transparent !important;
text-align: center;
}
[[/module]]
實際效果中,評分旋鈕應於頁面右上角。
部份靈感與代碼來自 [[*user sekai_s]] 為 [*http://scp-wiki-cn.wikidot.com/linkage-hub LinkAge中心頁]所做的頁面菜單旋鈕。
[[div class="rateWrap"]]
[[ul]]
[[li]]
[[div_ class="fa fa-angle-double-left"]]
@< >@
[[/div]]
[[ul]]
[[li]]
[[div class="ratedit sentiment"]]
[[include :zok6hoi2:ratemod:sbar-quartcircle lang=cn | uper=(%%rating_votes%%+%%rating%%)/(2*%%rating_votes%%) | dper=(%%rating_votes%%-%%rating%%)/(2*%%rating_votes%%) | theme=spinout-sentiment]]
[[/div]]
[[/li]]
[[li]]
[[div class="ratedit spinout-pts"]]
[[module rate]]
[[/div]]
[[/li]]
[[li]]
[[div class="ratedit spinout-up"]]
[[module rate]]
[[/div]]
[[/li]]
[[li]]
[[div class="ratedit spinout-down"]]
[[module rate]]
[[/div]]
[[/li]]
[[li]]
[[div class="ratedit spinout-cancel"]]
[[module rate]]
[[/div]]
[[/li]]
[[/ul]]
[[/li]]
[[/ul]]
[[/div]]
[[span style="clear: both;"]]@@ @@[[/span]]
@@ @@
@@ @@
@@ @@
@@ @@
@@ @@
@@ @@
@@ @@
[[include :scp-wiki-cn:component:coltop show= + 打開評分旋鈕模版|hide= - 收起評分旋鈕模版]]
[[div class="code"]]
{{@@[[div class="rateWrap"]]@@}}
{{@@[[ul]]@@}}
{{@@[[li]]@@}}
{{@@[[div_ class="fa fa-angle-double-left"]]@@}}
@< >@
{{@@[[/div]]@@}}
{{@@[[ul]]@@}}
{{@@[[li]]@@}}
{{@@[[div class="ratedit sentiment"]]@@}}
{{@@[[include :zok6hoi2:ratemod:sbar-quartcircle lang=cn | uper=(%%rating_votes%%+%%rating%%)/(2*%%rating_votes%%) | dper=(%%rating_votes%%-%%rating%%)/(2*%%rating_votes%%) | theme=spinout-sentiment]]@@}}
{{@@[[/div]]@@}}
{{@@[[/li]]@@}}
{{@@[[li]]@@}}
{{@@[[div class="ratedit spinout-pts"]]@@}}
{{@@[[module rate]]@@}}
{{@@[[/div]]@@}}
{{@@[[/li]]@@}}
{{@@[[li]]@@}}
{{@@[[div class="ratedit spinout-up"]]@@}}
{{@@[[module rate]]@@}}
{{@@[[/div]]@@}}
{{@@[[/li]]@@}}
{{@@[[li]]@@}}
{{@@[[div class="ratedit spinout-down"]]@@}}
{{@@[[module rate]]@@}}
{{@@[[/div]]@@}}
{{@@[[/li]]@@}}
{{@@[[li]]@@}}
{{@@[[div class="ratedit spinout-cancel"]]@@}}
{{@@[[module rate]]@@}}
{{@@[[/div]]@@}}
{{@@[[/li]]@@}}
{{@@[[/ul]]@@}}
{{@@[[/li]]@@}}
{{@@[[/ul]]@@}}
{{@@[[/div]]@@}}
[[/div]]
[[include :scp-wiki-cn:component:colend]]
[[include :scp-wiki-cn:component:coltop show= + 打開CSS代碼|hide= - 收起CSS代碼]]
[[code]]
[[module css]]
/* Spin Out Rate */
.rateWrap {
position: fixed;
right: 0;
top: 0;
width: 6em;
height: 6em;
border-radius: 0 0 0 100%;
overflow: hidden;
z-index: 9;
-webkit-transition-delay: .8s;
-moz-transition-delay: .8s;
-ms-transition-delay: .8s;
-o-transition-delay: .8s;
transition-delay: .8s;
-webkit-transition-property: width, height;
-moz-transition-property: width, height;
-ms-transition-property: width, height;
-o-transition-property: width, height;
transition-property: width, height;
}
@media (min-width: 1041px) {
.rateWrap {
right: calc(50vw - 520px);
}
}
.rateWrap:hover {
width: 24em;
height: 24em;
-webkit-transition-delay: 0;
-moz-transition-delay: 0;
-ms-transition-delay: 0;
-o-transition-delay: 0;
transition-delay: 0;
}
.rateWrap ul {
margin: 0;
padding: 0;
list-style: none;
position: absolute;
right: 0;
top: 0;
width: 0;
height: 0;
}
.rateWrap ul li {
position: absolute;
right: 0;
top: 0;
border-radius: 0 0 0 100%;
}
.rateWrap ul li ul li {
position: absolute;
right: 0;
top: 0;
border-radius: 100% 0 0 0;
}
.rateWrap ul li .ratedit {
display: block;
position: absolute;
left: 0;
bottom: 0;
width: 100%;
height: 100%;
}
.rateWrap > ul > li {
width: 6em;
height: 6em;
background-color: #404040;
color: #fff;
cursor: pointer;
-webkit-transition: .3s ease-in-out;
-moz-transition: .3s ease-in-out;
-ms-transition: .3s ease-in-out;
-o-transition: .3s ease-in-out;
transition: .3s ease-in-out;
-webkit-transition-delay: .5s;
-moz-transition-delay: .5s;
-ms-transition-delay: .5s;
-o-transition-delay: .5s;
transition-delay: .5s;
}
.rateWrap:hover > ul > li {
width: 11em;
height: 11em;
-webkit-transition-delay: 0;
-moz-transition-delay: 0;
-ms-transition-delay: 0;
-o-transition-delay: 0;
transition-delay: 0;
}
.rateWrap > ul > li > div.fa {
position: absolute;
right: 0;
top: 0;
width: 1.2em;
height: 1.2em;
font-size: 3em;
-webkit-transition: .3s ease-in-out;
-moz-transition: .3s ease-in-out;
-ms-transition: .3s ease-in-out;
-o-transition: .3s ease-in-out;
transition: .3s ease-in-out;
-webkit-transition-delay: .5s;
-moz-transition-delay: .5s;
-ms-transition-delay: .5s;
-o-transition-delay: .5s;
transition-delay: .5s;
}
.rateWrap:hover > ul > li > div.fa {
font-size: 5.5em;
-webkit-transition-delay: 0;
-moz-transition-delay: 0;
-ms-transition-delay: 0;
-o-transition-delay: 0;
transition-delay: 0;
}
.rateWrap > ul ul {
z-index: -1;
}
.rateWrap > ul ul li {
-webkit-transform-origin: right bottom;
-moz-transform-origin: right bottom;
-ms-transform-origin: right bottom;
-o-transform-origin: right bottom;
transform-origin: right bottom;
-webkit-transform: rotate(5deg);
-moz-transform: rotate(5deg);
-ms-transform: rotate(5deg);
-o-transform: rotate(5deg);
transform: rotate(5deg);
-webkit-transition: .5s ease-in-out;
-moz-transition: .5s ease-in-out;
-ms-transition: .5s ease-in-out;
-o-transition: .5s ease-in-out;
transition: .5s ease-in-out;
}
.rateWrap:hover > ul ul li {
-webkit-transition-delay: .3s;
-moz-transition-delay: .3s;
-ms-transition-delay: .3s;
-o-transition-delay: .3s;
transition-delay: .3s;
}
.rateWrap > ul > li > ul > li:nth-of-type(1) {
width: 24em;
height: 24em;
top: -24em;
background-color: #a3a3a7;
z-index: 8;
}
.rateWrap > ul > li > ul > li:nth-of-type(1) > a {
border-color: #a3a3a7;
}
.rateWrap:hover > ul > li > ul > li:nth-of-type(1) {
-webkit-transform: rotate(-18deg);
-moz-transform: rotate(-18deg);
-ms-transform: rotate(-18deg);
-o-transform: rotate(-18deg);
transform: rotate(-18deg);
}
.rateWrap > ul > li > ul > li:nth-of-type(2) {
width: 21.5em;
height: 21.5em;
top: -21.5em;
background-color: #b4b4b8;
z-index: 7;
}
.rateWrap > ul > li > ul > li:nth-of-type(2) > a {
border-color: #b4b4b8;
}
.rateWrap:hover > ul > li > ul > li:nth-of-type(2) {
-webkit-transform: rotate(-36deg);
-moz-transform: rotate(-36deg);
-ms-transform: rotate(-36deg);
-o-transform: rotate(-36deg);
transform: rotate(-36deg);
}
.rateWrap > ul > li > ul > li:nth-of-type(3) {
width: 19.5em;
height: 19.5em;
top: -19.5em;
background-color: #c5c5c9;
z-index: 6;
}
.rateWrap > ul > li > ul > li:nth-of-type(3) > a {
border-color: #c5c5c9;
}
.rateWrap:hover > ul > li > ul > li:nth-of-type(3) {
-webkit-transform: rotate(-54deg);
-moz-transform: rotate(-54deg);
-ms-transform: rotate(-54deg);
-o-transform: rotate(-54deg);
transform: rotate(-54deg);
}
.rateWrap > ul > li > ul > li:nth-of-type(4) {
width: 18em;
height: 18em;
top: -18em;
background-color: #d6d6da;
z-index: 5;
}
.rateWrap:hover > ul > li > ul > li:nth-of-type(4) {
-webkit-transform: rotate(-72deg);
-moz-transform: rotate(-72deg);
-ms-transform: rotate(-72deg);
-o-transform: rotate(-72deg);
transform: rotate(-72deg);
}
.rateWrap > ul > li > ul > li:nth-of-type(4) > a {
border-color: #d6d6da;
}
.rateWrap > ul > li > ul > li:nth-of-type(5) {
width: 17em;
height: 17em;
top: -17em;
background-color: #e7e7eb;
z-index: 4;
}
.rateWrap > ul > li > ul > li:nth-of-type(5) a {
border-color: #e7e7eb;
}
.rateWrap:hover > ul > li > ul > li:nth-of-type(5) {
-webkit-transform: rotate(-90deg);
-moz-transform: rotate(-90deg);
-ms-transform: rotate(-90deg);
-o-transform: rotate(-90deg);
transform: rotate(-90deg);
}
.rateWrap > ul ul a:hover {
border-color: var(--dark-color) !important;
}
.rateWrap ul li .ratedit .page-rate-widget-box {
display: block;
position: absolute;
border: 0 !important;
box-shadow: none !important;
margin: 0 !important;
width: 100%;
height: 100%;
font-size: 1.4em;
}
.rateWrap .ratedit .page-rate-widget-box * {
display: none;
}
.rateWrap .ratedit.list-pages-box {
height: 100%;
}
.rateWrap:hover ul li .ratedit.sentiment {
-webkit-transition: .3s ease-in-out;
-moz-transition: .3s ease-in-out;
-ms-transition: .3s ease-in-out;
-o-transition: .3s ease-in-out;
transition: .3s ease-in-out;
-webkit-transform: rotate(0deg);
-moz-transform: rotate(0deg);
-ms-transform: rotate(0deg);
-o-transform: rotate(0deg);
transform: rotate(0deg);
}
.rateWrap .ratedit.spinout-pts .rate-points {
display: inline-block !important;
position: absolute;
border: 0;
left: 0.5em;
bottom: 1em;
background: transparent !important;
}
.rateWrap .ratedit.spinout-pts .rate-points .number { display: inline-block;}
.rateWrap .ratedit.spinout-up .rateup,
.rateWrap .ratedit.spinout-down .ratedown,
.rateWrap .ratedit.spinout-cancel .cancel {
display: inline-block !important;
position: absolute;
border: 0;
font-weight: bold;
width: 90%;
height: 90%;
background: transparent !important;
}
.rateWrap .ratedit.spinout-up .rateup,
.rateWrap .ratedit.spinout-down .ratedown {
left: 0.7em;
bottom: 0.2em;
}
.rateWrap .ratedit.spinout-cancel .cancel {
left: 0;
bottom: 0;
}
.rateWrap .ratedit.spinout-up .rateup a,
.rateWrap .ratedit.spinout-down .ratedown a,
.rateWrap .ratedit.spinout-cancel .cancel a {
display: inline-block !important;
position: absolute;
border: 0;
width: 100%;
height: 20%;
left: 0;
bottom: 0;
color: #FFF !important;
font-size: 30px;
text-align: left;
background: transparent !important;
padding-left: .8em;
border-radius: 100% 0 0 0;
text-decoration: none;
-webkit-transition: .1s ease-in-out;
-moz-transition: .1s ease-in-out;
-ms-transition: .1s ease-in-out;
-o-transition: .1s ease-in-out;
transition: .1s ease-in-out;
}
.rateWrap .ratedit.spinout-up .rateup a:hover,
.rateWrap .ratedit.spinout-down .ratedown a:hover {
-webkit-filter: grayscale(100%) brightness(50%) sepia(100%) hue-rotate(-180deg) saturate(700%) contrast(0.8);
filter: grayscale(100%) brightness(50%) sepia(100%) hue-rotate(-180deg) saturate(700%) contrast(0.8);
}
.rateWrap .ratedit.spinout-cancel .cancel a:hover {
-webkit-filter: invert(40%) grayscale(100%) brightness(60%) sepia(100%) hue-rotate(-50deg) saturate(400%) contrast(2);
filter: grayscale(100%) brightness(60%) sepia(100%) hue-rotate(-50deg) saturate(600%) contrast(0.8);
}
.rateWrap .ratedit .list-pages-box {
display: inline-block !important;
position: relative;
border: 0;
background: transparent !important;
text-align: center;
}
[[/module]]
[[/code]]
[[include :scp-wiki-cn:component:colend]]
[[include :scp-wiki-cn:component:colend]]
[[include :scp-wiki-cn:component:colend]]