css - 在 Angular 6 中访问 SCSS 中的正文语言
问题描述
我正在使用 @ngx/translate 核心进行语言更改。我想在基础上定义 sass
<body lang="en">
或者
<body lang="fr">
通过 if else 条件。
Inside my component sass i want to do something like this
@if( bodylang = en)
/these rules
else
// these rules
我怎样才能做到这一点?
解决方案
由于它是 SCSS,因此您可以为此使用 CSS 属性选择器,例如:
a[target="_blank"] {
background-color: yellow;
}
在你的情况下是:
body[lang="en"] {
// Your code
}
body[lang="fr"] {
// Your code
}
你也可以像这样嵌套它们:
body {
background-color: orange;
&[lang="en"] {
background-color: blue;
}
}
这个选择器比仅仅引用 body 标签本身更具体。这意味着如果没有找到匹配的语言代码标签,它将应用常规的正文 CSS。您可以在此处找到更多属性选择器:https ://www.w3schools.com/css/css_attribute_selectors.asp
推荐阅读
- docker - 为什么我无法读取使用 docker 容器内的卷挂载创建的目录?
- python - 如何将变量数据插入postgresql?
- postgresql - DBMS_APPLICATION_INFO read_module、set_action、set_module 过程的 Postgres 替代方案
- twilio - 当座席将呼叫者置于保留状态时,我如何更改音乐?
- python - 用我开始的按钮打破循环?
- php - 需要帮助选择带有 xsl:choose 和 xsl/when 的 XSLT
- java - 输出流空指针
- docker - 如何使本地主机可以访问我的 VS Code 开发/远程容器端口?
- pycharm - 无法让 keras 模型或 tf.data.experimental.CsvDataset 在 Pycharm 上运行
- python - 可以根据语言 cookie 内容有条件地构建烧瓶“WTForms 类”