使用@mixin 在 Angular 上实现 RTL 支持
Using @mixin to achieve RTL support on Angular
我正在使用 mixin 将我的 Angular 应用程序从 LTR 相应地转换为 RTL。
@mixin rtl($property, $ltr-value, $rtl-value) {
[dir='ltr'] & {
#{$property}: $ltr-value;
}
[dir='rtl'] & {
#{$property}: $rtl-value;
}
}
@mixin rtl-prop($ltr-property, $rtl-property, $value) {
[dir='ltr'] & {
#{$ltr-property}: $value;
}
[dir='rtl'] & {
#{$rtl-property}: $value;
}
}
当我使用@include 时,由于某种原因它不起作用。 (html 标签定义正确)
@include rtl(border-radius, 0 10px 80px 0, 0 80px 10px 0);
<html lang="he" dir="rtl">
知道为什么吗?
对于那些将来会遇到此问题的人,问题是组件的封装 - 它被设置为仿真,这可能会干扰 类 名称。
改为 None。
我正在使用 mixin 将我的 Angular 应用程序从 LTR 相应地转换为 RTL。
@mixin rtl($property, $ltr-value, $rtl-value) {
[dir='ltr'] & {
#{$property}: $ltr-value;
}
[dir='rtl'] & {
#{$property}: $rtl-value;
}
}
@mixin rtl-prop($ltr-property, $rtl-property, $value) {
[dir='ltr'] & {
#{$ltr-property}: $value;
}
[dir='rtl'] & {
#{$rtl-property}: $value;
}
}
当我使用@include 时,由于某种原因它不起作用。 (html 标签定义正确)
@include rtl(border-radius, 0 10px 80px 0, 0 80px 10px 0);
<html lang="he" dir="rtl">
知道为什么吗?
对于那些将来会遇到此问题的人,问题是组件的封装 - 它被设置为仿真,这可能会干扰 类 名称。
改为 None。