Regarding the custom.css that I read here: https://learn.getgrav.org/themes/customization
1/ Is using custom.css the default way to overwrite all other css?
2/ If so, how to have it load as the last css?
3/ Is there a similar alternative for javascript?
@ityoflaw
To answer your questions point by point:
- Using custom.css is not the default way, but sure is the simplest way.
- If the theme you are using does use custom.css, it will add custom.css as last css.
Have a look in user/themes/<your theme>/templates/partials/base.html.twig
. You might find something like:
{% block stylesheets %}
{% do assets.addCss('theme://css-compiled/spectre'~compress) %}
{% if theme_var('spectre.exp') %}{% do assets.addCss('theme://css-compiled/spectre-exp'~compress) %}{% endif %}
{% if theme_var('spectre.icons') %}{% do assets.addCss('theme://css-compiled/spectre-icons'~compress) %}{% endif %}
{% do assets.addCss('theme://css-compiled/theme'~compress) %}
{% do assets.addCss('theme://css/custom.css') %}
{% do assets.addCss('theme://css/line-awesome.min.css') %}
{% endblock %}
- There is no custom.js… If you inherit
base.html.twig
in your own theme, you can add any js in a similar way as adding css. See the topic “Theme inheritance” in the same document you are referring to.