stylesheets.html 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1">
  6. <title>Work with the CSS Stylesheets :: jMonkeyEngine Docs</title>
  7. <link rel="canonical" href="https://wiki.jmonkeyengine.org/wiki-ui/stylesheets.html">
  8. <link rel="prev" href="templates.html">
  9. <link rel="next" href="add-fonts.html">
  10. <meta name="generator" content="Antora 2.3.3">
  11. <link rel="stylesheet" href="../_/css/site.css">
  12. <meta property="og:image" content="https://wiki.jmonkeyengine.org/_/img/iconx128.png">
  13. <meta property="og:description" content="Work with the CSS Stylesheets">
  14. <meta property="og:title" content="jMonkeyEngine Docs">
  15. <link rel="stylesheet" href="../_/css/site-extra.css">
  16. <link rel="stylesheet" href="../_/css/vendor/docsearch.min.css">
  17. <!-- fetched from https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.css -->
  18. <link rel="icon" href="../_/img/favicon.ico" type="image/x-icon">
  19. </head>
  20. <body class="article">
  21. <header class="header">
  22. <nav class="navbar">
  23. <div class="navbar-brand">
  24. <a class="navbar-item" href="https://wiki.jmonkeyengine.org">
  25. <img alt="" src="../_/img/jMonkeyDocLogo.png" height="32" type="image/x-icon">
  26. </a>
  27. <div class="navbar-item hide-for-print">
  28. <input type="text" placeholder="Search docs..." id="search-input"/>
  29. </div>
  30. <button class="navbar-burger" data-target="topbar-nav">
  31. <span></span>
  32. <span></span>
  33. <span></span>
  34. </button>
  35. </div>
  36. <div id="topbar-nav" class="navbar-menu">
  37. <div class="navbar-end">
  38. <div class="navbar-item theme-switch-wrapper">
  39. <label class="theme-switch" for="checkbox">
  40. <input type="checkbox" id="checkbox" />
  41. <div class="slider round"></div>
  42. </label>
  43. </div>
  44. <a class="navbar-item" href="https://github.com/jmonkeyengine/wiki">Github</a>
  45. </div>
  46. </div>
  47. </nav>
  48. </header>
  49. <div class="body">
  50. <div class="nav-container" data-component="wiki-ui" data-version="master">
  51. <aside class="nav">
  52. <div class="panels">
  53. <div class="nav-panel-menu is-active" data-panel="menu">
  54. <nav class="nav-menu">
  55. <h3 class="title"><a href="index.html">Wiki UI</a></h3>
  56. <ul class="nav-list">
  57. <li class="nav-item" data-depth="0">
  58. <ul class="nav-list">
  59. <li class="nav-item" data-depth="1">
  60. <a class="nav-link" href="prerequisites.html">UI Development Prerequisites</a>
  61. </li>
  62. <li class="nav-item" data-depth="1">
  63. <a class="nav-link" href="set-up-project.html">Set up a UI Project</a>
  64. </li>
  65. <li class="nav-item" data-depth="1">
  66. <a class="nav-link" href="build-preview-ui.html">Build and Preview the UI</a>
  67. </li>
  68. <li class="nav-item" data-depth="1">
  69. <a class="nav-link" href="development-workflow.html">UI Development Workflow</a>
  70. </li>
  71. <li class="nav-item" data-depth="1">
  72. <a class="nav-link" href="templates.html">Work with the Handlebars Templates</a>
  73. </li>
  74. <li class="nav-item is-current-page" data-depth="1">
  75. <button class="nav-item-toggle"></button>
  76. <a class="nav-link" href="stylesheets.html">Work with the CSS Stylesheets</a>
  77. <ul class="nav-list">
  78. <li class="nav-item" data-depth="2">
  79. <a class="nav-link" href="add-fonts.html">Add Fonts</a>
  80. </li>
  81. </ul>
  82. </li>
  83. <li class="nav-item" data-depth="1">
  84. <button class="nav-item-toggle"></button>
  85. <a class="nav-link" href="style-guide.html">UI Element Styles</a>
  86. <ul class="nav-list">
  87. <li class="nav-item" data-depth="2">
  88. <a class="nav-link" href="inline-text-styles.html">Inline Text</a>
  89. </li>
  90. <li class="nav-item" data-depth="2">
  91. <a class="nav-link" href="admonition-styles.html">Admonitions</a>
  92. </li>
  93. <li class="nav-item" data-depth="2">
  94. <a class="nav-link" href="list-styles.html">Lists</a>
  95. </li>
  96. <li class="nav-item" data-depth="2">
  97. <a class="nav-link" href="sidebar-styles.html">Sidebars</a>
  98. </li>
  99. <li class="nav-item" data-depth="2">
  100. <a class="nav-link" href="ui-macro-styles.html">UI Macros</a>
  101. </li>
  102. </ul>
  103. </li>
  104. </ul>
  105. </li>
  106. </ul>
  107. </nav>
  108. </div>
  109. <div class="nav-panel-explore" data-panel="explore">
  110. <div class="context">
  111. <span class="title">Wiki UI</span>
  112. <span class="version">master</span>
  113. </div>
  114. <ul class="components">
  115. <li class="component">
  116. <span class="title">Docs</span>
  117. <ul class="versions">
  118. <li class="version is-latest">
  119. <a href="../docs/documentation.html">master</a>
  120. </li>
  121. </ul>
  122. </li>
  123. <li class="component is-current">
  124. <span class="title">Wiki UI</span>
  125. <ul class="versions">
  126. <li class="version is-current is-latest">
  127. <a href="index.html">master</a>
  128. </li>
  129. </ul>
  130. </li>
  131. </ul>
  132. </div>
  133. </div>
  134. </aside>
  135. </div>
  136. <main class="article">
  137. <div class="toolbar" role="navigation">
  138. <button class="nav-toggle"></button>
  139. <nav class="breadcrumbs" aria-label="breadcrumbs">
  140. <ul>
  141. <li><a href="index.html">Wiki UI</a></li>
  142. <li><a href="stylesheets.html">Work with the CSS Stylesheets</a></li>
  143. </ul>
  144. </nav>
  145. <div class="edit-this-page"><a href="https://github.com/jMonkeyEngine/wiki-ui/edit/master/docs/modules/ROOT/pages/stylesheets.adoc">Edit this Page</a></div>
  146. </div>
  147. <div class="content">
  148. <article class="doc">
  149. <h1 class="page">Work with the CSS Stylesheets</h1>
  150. <div id="preamble">
  151. <div class="sectionbody">
  152. <div class="paragraph">
  153. <p>The stylesheets are written in CSS.
  154. These stylesheets utilize CSS variables to keep the CSS DRY and easy to customize.</p>
  155. </div>
  156. </div>
  157. </div>
  158. <div class="sect1">
  159. <h2 id="stylesheet-organization-and-processing"><a class="anchor" href="#stylesheet-organization-and-processing"></a>Stylesheet organization and processing</h2>
  160. <div class="sectionbody">
  161. <div class="paragraph">
  162. <p>Within the default UI project, the stylesheet files are separated into modules to help organize the rules and make them easier to find.
  163. The UI build combines and minifies these files into a single file named <em class="path">site.css</em>.
  164. During the build, the CSS is enhanced using PostCSS in much the same way as a CSS preprocessor works, only the modifications are made to the CSS directly.
  165. The modifications mostly center around injecting vendor prefixes for compatibility or backporting new features to more broadly supported syntax.</p>
  166. </div>
  167. </div>
  168. </div>
  169. <div class="sect1">
  170. <h2 id="add-a-new-css-rule"><a class="anchor" href="#add-a-new-css-rule"></a>Add a new CSS rule</h2>
  171. <div class="sectionbody">
  172. <div class="paragraph">
  173. <p>Let&#8217;s consider the case when you want to modify the font size of a section title.</p>
  174. </div>
  175. <div class="paragraph">
  176. <p>First, make sure you have set up the project and created a development branch.
  177. Next, open the file <em class="path">src/css/doc.css</em> and modify the rule for the section title.</p>
  178. </div>
  179. <div class="listingblock">
  180. <div class="content">
  181. <pre class="highlightjs highlight"><code class="language-css hljs" data-lang="css">.doc h1 {
  182. font-size: 2.5rem;
  183. margin-bottom: 1rem;
  184. margin-top: 2rem
  185. }</code></pre>
  186. </div>
  187. </div>
  188. <div class="paragraph">
  189. <p>Save the file, commit it to git, push the branch, and allow the approval workflow to play out.</p>
  190. </div>
  191. </div>
  192. </div>
  193. <nav class="pagination">
  194. <span class="prev"><a href="templates.html">Work with the Handlebars Templates</a></span>
  195. <span class="next"><a href="add-fonts.html">Add Fonts</a></span>
  196. </nav>
  197. </article>
  198. <aside class="toc sidebar" data-title="Contents" data-levels="2">
  199. <div class="toc-menu"></div>
  200. </aside>
  201. </div>
  202. </main>
  203. </div>
  204. <footer class="footer">
  205. <p>Copyright 2020 jMonkeyEngine Wiki Contributors. Licensed BSD-3.</p>
  206. </footer>
  207. <script src="../_/js/vendor/docsearch.min.js"></script>
  208. <!-- fetched from https://cdn.jsdelivr.net/npm/docsearch.js@2/dist/cdn/docsearch.min.js -->
  209. <script>
  210. var search = docsearch({
  211. apiKey: 'a736b6d93de805e26ec2f49b55013fbd',
  212. indexName: 'jmonkeyengine',
  213. inputSelector: '#search-input',
  214. autocompleteOptions: { hint: false, keyboardShortcuts: ['s'] },
  215. algoliaOptions: { hitsPerPage: 10 }
  216. }).autocomplete
  217. search.on('autocomplete:closed', function () { search.autocomplete.setVal() })
  218. function focusSearchInput () { document.querySelector('#search-input').focus() }
  219. if (document.querySelector('.home-link.is-current')) window.addEventListener('load', focusSearchInput)
  220. </script>
  221. <script src="../_/js/site.js"></script>
  222. <script async src="../_/js/vendor/highlight.js"></script>
  223. </body>
  224. </html>