CSS en Tailwind
Stijlbladarchitectuur
De stijlen van Chamilo zijn opgebouwd in deze volgorde:
Tailwind CSS — Utility-klassen voor lay-out, spacing en kleur. Geconfigureerd met
important: truezodat utilities de standaardinstellingen van PrimeVue-componenten overschrijven.SCSS — Aangepaste stijlen in
assets/css/scss/, georganiseerd in lagen voor atomen, moleculen, organismen, lay-out en componenten.PrimeVue-componentstijlen — Overschreven per component in
assets/css/scss/atoms/.Thema
colors.css— CSS aangepaste eigenschappen voor het actieve kleurenthema, als laatste geladen zodat ze over alles heen cascaderen.
PrimeFlex staat vermeld in package.json maar wordt niet geïmporteerd — Tailwind dekt alle utility-behoeften.
Hoofdstijlblad (assets/css/app.scss)
assets/css/app.scss)app.scss is het Webpack-invoerpunt voor het hoofdstijlblad. Het importeert:
_tailwind.scss— Tailwind's@tailwind base / components / utilitiesrichtlijnenscss/index.scss— Barrel-bestand dat alle SCSS-partials importeertCSS van derden (cropper, select2, daterangepicker, TinyMCE skin, fancybox, timepicker, qtip)
editor_content.scss— Stijlen die worden geïnjecteerd in de body van de TinyMCE-editor iframe
Tailwind Configuratie (tailwind.config.js)
tailwind.config.js)Belangrijke instellingen:
Inhoudspaden scannen Vue-componenten, legacy PHP-pagina's, pluginbestanden en Twig-templates zodat ongebruikte utilities worden verwijderd bij productie-builds.
CSS-Variabele Kleursysteem
Alle kleurtokens worden ondersteund door CSS aangepaste eigenschappen in plaats van hardcoded waarden:
De colorWithOpacity helper genereert rgb(var(--color-primary-base) / <opacity>), wat opacity-varianten mogelijk maakt zoals bg-primary/50. De daadwerkelijke RGB-waarden worden per thema gedefinieerd in var/themes/{slug}/colors.css en worden tijdens runtime geladen — zie Kleurenthema's.
Tailwind Plugins
@tailwindcss/forms en @tailwindcss/typography zijn ingeschakeld.
Aangepaste Typografie Schaal
Vier extra lettergrootte/lijnafstand paren zijn toegevoegd via theme.extend.fontSize:
text-body-1
16px / 24px
text-body-2
14px / 16px
text-caption
13px / 16px
text-tiny
11px / 16px
PostCSS
PostCSS (Tailwind + Autoprefixer) is inline geconfigureerd in webpack.config.js via enablePostCssLoader(). Er is geen apart postcss.config.js bestand.
Gespecialiseerde Stijlbladen
assets/css/app.scss
app
Hoofdtoepassingsstijlen
assets/css/chat.scss
css/chat
Chatinterface stijlen
assets/css/document.scss
css/document
Documentviewer stijlen
assets/css/editor.scss
css/editor
TinyMCE-editor shell stijlen
assets/css/editor_content.scss
css/editor_content
Stijlen geïnjecteerd in de editor iframe body
assets/css/markdown.scss
css/markdown
Markdown-gerenderde inhoud
assets/css/print.scss
css/print
Afdrukstijlblad
assets/css/responsive.scss
css/responsive
Responsieve overschrijvingen
assets/css/scorm.scss
css/scorm
SCORM-speler stijlen
SCSS Module Structuur (assets/css/scss/)
assets/css/scss/)Tailwind Gebruiken in Vue Componenten
Omdat important: true is ingesteld in tailwind.config.js, overschrijven Tailwind utilities betrouwbaar de PrimeVue-componentstijlen zonder extra specificiteit nodig te hebben.
Laatst bijgewerkt
Was dit nuttig?