Die zwei von Magento empfohlenen Methoden zum Überschreiben oder Erweitern der Stile eines übergeordneten Themas:
1. Einfacher Weg
Erweitern:
Erstellen Sie in Ihrem Themenverzeichnis ein web/css/source
Unterverzeichnis. (Sie haben diesen Teil bereits erledigt.) Erstellen Sie dort eine _extend.less
Datei.
Laut Dokumentation :
"Das Erweitern eines Themas mit _extend.less ist die einfachste Option, wenn Sie mit allem, was das übergeordnete Thema hat, zufrieden sind, aber weitere Stile hinzufügen möchten."
Überschreiben:
Anstatt die _extend.less
Datei zu erstellen, erstellen Sie eine _theme.less
Datei. In diesem Fall müssen Sie alle benötigten Variablen vom übergeordneten Element kopieren _theme.less
, einschließlich derjenigen, die nicht geändert werden. Nehmen Sie dann Ihre Änderungen vor.
Der Dokumentation zufolge ist der Nachteil:
"Sie müssen Ihre Dateien überwachen und manuell aktualisieren, wenn das _theme.less des Elternteils aktualisiert wird."
2. Strukturierter Weg
Erweitern:
Mit dieser Methode können Sie Ihren Code besser organisieren. Ihre Änderungen werden strukturiert. Anstatt eine einzelne _extend.less
Datei zu verwenden, um alle Ihre Änderungen einzuschließen, erstellen Sie eine Erweiterungsdatei für jede Komponente aus der Magento-UI-Bibliothek, die Sie ändern möchten.
Angenommen, Sie möchten Stile aus Schaltflächen- und Navigationskomponenten erweitern. Erstellen Sie in Ihrem Themenverzeichnis zwei Dateien: _buttons_extend.less
und _navigation_extend.less
fügen Sie dann Ihre Änderungen für jede Komponente in die entsprechende Datei ein.
Dann erstellen Sie die _extend.less
Datei und fügen diesen Code hinzu:
@import '_buttons_extend.less';
@import '_navigation_extend.less';
Überschreiben:
In Ihrem Thema, erstellen Sie eine Kopie der Datei auf die UI - Komponente entspricht , die Sie ändern möchten ( _buttons.less
, _navigation.less
usw.) Diese Datei wird das außer Kraft setzen _buttons.less
der übergeordneten Thema.
Es ist wichtig, den Unterschied zwischen Überschreiben und Erweitern zu beachten .
Weitere Informationen zum Überschreiben und Erweitern in dieser Dokumentation oder zu CSS in Magento 2 finden Sie im Frontend-Entwicklerhandbuch .