在Drupal 8中使用库中添加和管理样式表(CSS)文件的标准方法是什么



在为Drupal开发模块或主题时,不可避免地会有我们可能需要为我们的项目包含外部CSS或JavaScript插件或库。


Drupal Assets Management有点复杂,让我感到困惑,我读到
将StyleSheets(CSS)和JavaScript(JS)添加到Drupal 8主题中,

添加样式表(CSS)和JavaScript(JS)(JS)一个drupal 8模块,
,但并没有清楚地解释这一点,还有一些问题。

如何将这些库和样式表添加到网页中?它们是否按SMACSS类别(基本,布局,组件,状态,主题)的顺序添加?
例如,考虑以下结构:
themename.libraries.yml

library-A:
  css:
    # The SMACSS category.
    base:
      # The path to the css file.
      assets/css/stylesheets-1.css: {}
    theme:
      assets/css/stylesheets-2.css: {}
library-B:
  css:
    base:
      # The path to the css file.
      assets/css/stylesheets-3.css: {}
    theme:
      assets/css/stylesheets-4.css {}

在Library-A或B中(每个单独):我应该如何定义类别?首先应该是Theme,然后是base还是反向?什么是标准?

在完全库中 - A和B :首先加载它们的女巫?图书馆 - A还是B?哪些是正确的?

for 1:更多信息在这里,尽管权重倒置,但基本上主题将覆盖基础;现在,这是一个指导方针,而不是鲁尔,所以这确实取决于您在写什么

for 2:这确实取决于加载它们的位置和方式,

ex加载库的倒数顺序:

  • 主题

    库:

    • 'Mytheme/Library-B'//用" - "
    • 替换子弹
    • 'Mytheme/Library-A'//用" - "
    • 替换子弹
  • 在模板中

    {{attact_library('mytheme/library-b')}}}{{attach_library('Mytheme/Library-a')}}}

  • 在模块中

    $ types ['element'] ['#附件'] ['library'] [] ='mytheme/library-b';美元

最新更新