sidebar.yml 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304
  1. Title : 側邊欄
  2. Description: 從側邊滑出來,然後又滑回去了。
  3. Outline : |
  4. 在 Tocas UI 中並沒有漢堡選單(類似 Bootstrap 的響應式選單),因為那較不直覺,容易令人猜測選單的出現位置。為了解決這個問題 Tocas UI 有著類似原生應用程式一樣的選單。
  5. 側邊欄只能用於網頁最頂層,而不能嵌套在頁面上的容器內。但為了良好地示範側邊欄的應用,這個頁面上有稍微修改令側邊欄能夠套入容器中。
  6. Definitions:
  7. - Title : 頁面佈局
  8. Description: 一但使用了側邊欄,你就必須更改頁面結構。
  9. Sections :
  10. - Title : 頁面推動器和側邊欄
  11. Description: 側邊欄出現時會將頁面向特定方向推動,為了達到這個效果,網頁中 `<body>` 的結構就必須像下面這樣做。
  12. type : code
  13. Since : 2.3.3
  14. HTML : |
  15. <body>
  16. <!-- 側邊欄元件 -->
  17. <div class="ts left [[sidebar]]">
  18. </div>
  19. <!-- / 側邊欄元件 -->
  20. <!-- 頁面推動器 -->
  21. <div class="[[pusher]]">
  22. <!-- 網頁內容擺置於此 -->
  23. </div>
  24. <!-- / 頁面推動器 -->
  25. </body>
  26. - Title : 擠壓的推動器
  27. Description: 通常來說側邊欄出現時,會將頁面往某個方向推。但你能讓頁面呈現被擠壓而不是被推出螢幕外。如果你有一個常態的功能側邊欄就很適合使用這種推動器。
  28. type : code
  29. Since : 2.3.3
  30. HTML : |
  31. <div class="[[squeezable]] pusher">
  32. <!-- 網頁內容擺置於此 -->
  33. </div>
  34. - Title : 種類
  35. Description: 側邊欄具有不同的種類。
  36. Sections :
  37. - Title : 基本
  38. Description: 一個最基本的側邊欄會帶有內距,你能夠在內部擺置其他元件。
  39. type : sidebar
  40. Since : 2.3.3
  41. HTML : |
  42. <div class="ts static visible [[left sidebar]]">
  43. <div class="ts {{header}}">
  44. 搭拉!
  45. <div class="sub header">你打開了秘密的側邊欄!</div>
  46. </div>
  47. <div class="ts {{segment}}">
  48. 你可以像這樣在側邊欄放置很多不同的元件。
  49. </div>
  50. </div>
  51. - Title : 垂直選單
  52. Description: 側邊欄也能夠是一個由選單元件所組成的,這會很常用到。搭配 `inverted` 的反色語氣能讓側邊選單更加的明顯。
  53. type : sidebar
  54. Since : 2.3.3
  55. HTML : |
  56. <div class="ts static visible left sidebar inverted [[vertical menu]]">
  57. <a class="item">首頁</a>
  58. <a class="item">文件</a>
  59. <a class="item">下載</a>
  60. <div class="item">
  61. 首頁功能
  62. <div class="menu">
  63. <a class="active item">搜尋</a>
  64. <a class="item">新增</a>
  65. <a class="item">移除</a>
  66. </div>
  67. </div>
  68. <a class="bottom item">登出</a>
  69. </div>
  70. - Title : 狀態
  71. Description: 側邊欄和相關的元件有不同的狀態。
  72. Sections :
  73. - Title : 靜態顯示
  74. Description: 側邊欄在預設情況下是隱藏的,你可以手動將其保持在顯示狀態。
  75. type : sidebar
  76. Since : 2.3.3
  77. HTML : |
  78. <div class="ts [[static visible]] left sidebar">
  79. <div class="ts {{header}}">
  80. <i class="unhide {{icon}}"></i>
  81. 預設顯示
  82. </div>
  83. <p>這個側邊欄不需要透過 JavaScript 切換,就會直接顯示出來。</p>
  84. </div>
  85. - Title : 外觀
  86. Description: 側邊欄有著不同的外觀點綴。
  87. Sections :
  88. - Title : 水平方向
  89. Description: 一個側邊欄必須要指定在螢幕上呈現的方向。
  90. type : sidebar
  91. Since : 2.3.3
  92. HTML : |
  93. <div class="ts static visible [[left]] sidebar">
  94. <div class="ts {{header}}">
  95. <i class="left arrow {{icon}}"></i>
  96. 靠左
  97. <div class="sub header">哇喔!這是個靠左邊的側邊欄呢!</div>
  98. </div>
  99. </div>
  100. <div class="ts static visible [[right]] sidebar">
  101. <div class="ts {{header}}">
  102. <i class="right arrow {{icon}}"></i>
  103. 靠右
  104. <div class="sub header">或者也能像這樣向右靠齊。</div>
  105. </div>
  106. </div>
  107. - Title : 覆蓋的
  108. Description: 側邊欄一般來說會將網頁內容往旁邊推,但你可以讓側邊欄是覆蓋並浮在頁面上的。這麼做的話頁面內容就不會被推到一旁。
  109. type : sidebar
  110. Since : 2.3.3
  111. HTML : |
  112. <div class="ts static visible [[overlapped]] left sidebar">
  113. 這個側邊欄會覆蓋在頁面內容上方。
  114. </div>
  115. - Title : 無內距
  116. Description: 側邊欄可以沒有內距,這很適合擺放流動寬度的元件。
  117. type : sidebar
  118. Since : 2.3.3
  119. HTML : |
  120. <div class="ts static visible [[fitted]] left sidebar">
  121. <div class="ts small fluid inverted negative {{message}}">
  122. <div class="header">帳號不安全。</div>
  123. 請確保您已啟用二步驟驗證。
  124. </div>
  125. </div>
  126. - Title : 增加內距
  127. Description: 你可以增加側邊欄的內距,看起來會更寬闊。
  128. type : sidebar
  129. Since : 2.3.3
  130. HTML : |
  131. <div class="ts static visible [[padded]] left sidebar">
  132. 增加內距的側邊欄。
  133. </div>
  134. <div class="ts static visible [[very padded]] right sidebar">
  135. 增加更多內距的側邊欄。
  136. </div>
  137. - Title : 寬度
  138. Description: |
  139. <p>你可以更改側邊欄的寬度。</p>
  140. <table class="ts small stackable definition table">
  141. <thead>
  142. <tr>
  143. <th></th>
  144. <th>64px</th>
  145. <th>180px</th>
  146. <th>230px</th>
  147. <th>300px</th>
  148. <th>360px</th>
  149. </tr>
  150. </thead>
  151. <tbody>
  152. <tr>
  153. <td>樣式名稱</td>
  154. <td>`very thin`</td>
  155. <td>`thin`</td>
  156. <td>預設</td>
  157. <td>`wide`</td>
  158. <td>`very wide`</td>
  159. </tr>
  160. <tr>
  161. <td>中文稱呼</td>
  162. <td>非常窄</td>
  163. <td>窄的</td>
  164. <td></td>
  165. <td>寬的</td>
  166. <td>非常寬</td>
  167. </tr>
  168. <tr>
  169. <td>行動裝置全寬</td>
  170. <td><i class="x icon"></i></td>
  171. <td><i class="x icon"></i></td>
  172. <td><i class="x icon"></i></td>
  173. <td><i class="positive check icon"></i></td>
  174. <td><i class="positive check icon"></i></td>
  175. </tr>
  176. </tbody>
  177. </table>
  178. type : sidebar
  179. Since : 2.3.3
  180. HTML : |
  181. <div class="ts static visible [[wide]] left sidebar vertical {{menu}}">
  182. <div class="image item">
  183. <img src="!-16:9-!">
  184. </div>
  185. <a class="item">Yami Odymel</a>
  186. <div class="item">
  187. 個人資料
  188. <div class="menu">
  189. <a class="active item">隱私</a>
  190. <a class="item">好友</a>
  191. <a class="item">文章</a>
  192. </div>
  193. </div>
  194. </div>
  195. Modules:
  196. - Title : JavaScript
  197. Description: 側邊欄有提供可用的 JavaScript 模塊。
  198. Sections :
  199. - Title : 顯示切換
  200. Description: |
  201. <p>你需要透過 JavaScript 才能夠切換側邊欄的出現與消失。</p>
  202. <table class="ts small stackable definition table">
  203. <thead>
  204. <tr>
  205. <th></th>
  206. <th>註釋</th>
  207. </tr>
  208. </thead>
  209. <tbody>
  210. <tr>
  211. <td>show</td>
  212. <td>顯示指定側邊欄。</td>
  213. </tr>
  214. <tr>
  215. <td>hide</td>
  216. <td>隱藏指定側邊欄。</td>
  217. </tr>
  218. <tr>
  219. <td>toggle</td>
  220. <td>切換側邊欄。當側邊欄是隱藏時會顯示、顯示時則隱藏。</td>
  221. </tr>
  222. </tbody>
  223. </table>
  224. type : code
  225. Since : 2.3.3
  226. HTML : |
  227. <div class="ts demo left sidebar inverted vertical menu">
  228. <a class="item">首頁</a>
  229. <a class="item">文件</a>
  230. <a class="item">部落格</a>
  231. </div>
  232. JavaScript: |
  233. ts('.left.inverted.sidebar').sidebar('toggle');
  234. - Title : 選項
  235. Description: |
  236. <p>你能夠透過選項初始化並設置側邊欄的特性。</p>
  237. <table class="ts small celled stackable definition table">
  238. <thead>
  239. <tr>
  240. <th></th>
  241. <th>預設值</th>
  242. <th>註釋</th>
  243. </tr>
  244. </thead>
  245. <tbody>
  246. <tr>
  247. <td>dimPage</td>
  248. <td>false</td>
  249. <td>是否要在側邊欄出現時將主畫面淡化。</td>
  250. </tr>
  251. <tr>
  252. <td>exclusive</td>
  253. <td>false</td>
  254. <td>是否僅允許頁面上同時只會出現一個側邊欄,若為是,則會在開啟該側邊欄的同時關閉其他側邊欄。</td>
  255. </tr>
  256. <tr>
  257. <td>scrollLock</td>
  258. <td>false</td>
  259. <td>是否要在側邊欄出現時鎖定螢幕捲軸的滾動。</td>
  260. </tr>
  261. <tr>
  262. <td>closable</td>
  263. <td>true</td>
  264. <td>是否允許使用者點擊主畫面將側邊欄關閉。</td>
  265. </tr>
  266. </tbody>
  267. </table>
  268. type : code
  269. Since : 2.3.3
  270. HTML : |
  271. <div class="ts demo left sidebar">
  272. <div class="ts {{header}}">
  273. 搭拉!
  274. <div class="sub header">你打開了秘密的側邊欄!</div>
  275. </div>
  276. <div class="ts {{segment}}">
  277. 你可以像這樣在側邊欄放置很多不同的元件。
  278. </div>
  279. </div>
  280. JavaScript: |
  281. ts('.left.sidebar:not(.inverted)').sidebar({
  282. dimPage: true,
  283. scrollLock: true
  284. }).sidebar('toggle');