gpt4 book ai didi

twitter-bootstrap - 如何在 scss 中启用 Bootstrap rtl

转载 作者:行者123 更新时间:2023-12-04 22:43:51 26 4
gpt4 key购买 nike

我根据 documents 编码在这个链接中。但是我的代码在 SCSS 中不起作用。
这是我的 main.scss。

@import "node_modules/bootstrap/scss/bootstrap";

body {
background: red #{"/* rtl:blue */"};
}
这是我的html
<!doctype html>
<html lang="ar" dir="rtl">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="compiled.css">
<title>Test</title>
</head>
<body>
<h1>Test Test Test</h1>

<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta3/dist/js/bootstrap.bundle.min.js" integrity="sha384-JEW9xMcG8R+pH31jmWH6WWP0WintQrMb4s7ZOdauHnUtxwoG2vI5DkLtS3qm9Ekf" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.9.1/dist/umd/popper.min.js" integrity="sha384-SR1sx49pcuLnqZUnnPwx6FCym0wLsk5JZuNx2bPPENzswTNFaQU1RDvt3wT4gWFG" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta3/dist/js/bootstrap.min.js" integrity="sha384-j0CNLUeiqtyaRmlzUHCPZ+Gy5fQu0dQ6eZ/xAww941Ai1SxSY+0EQqNXNE6DZiVc" crossorigin="anonymous"></script>
</body>
</html>

最佳答案

Bootstrap 5 文档中可能不清楚,但 RTLCSS是一个 JS 模块,用于将特殊的 RTLCSS 格式的 CSS 编译为 CSS。例如,
带有值指令的 RTLCSS:

body {
background: red /*rtl:blue*/;
}
CSS 结果(使用 RTLCSS 处理后):
body {
background: blue;
}
你可以试试这个 RTLCSS playground
浏览器不理解 RTLCSS,他们只理解 CSS
RTLCSS 也不同于使用 dir="rtl" .简单地使用“dir=rtl” tells the browser the "directionality of the element's text" .
Bootstrap 5 如何实现 RTL 支持
Bootstrap 5 compiled CSS files你会看到现在有一​​个 bootstrap.rtl.min.css文件。 Bootstrap 使用 RTLCSS 处理/编译 SASS 生成的 LTR CSS。 bootstrap.rtl.(min.)css 的方法如下文件由 Bootstrap 生成...
  • SASS 源文件
  • 使用 SASS 编译会生成标准 LTR CSS (bootstrap.css),其中包含带有特殊 RTLCSS 指令
  • 的注释
  • 后期处理 bootstrap.css使用 RTLCSS 模块
  • 结果是 bootstrap.rtl.css其中包含重新定位组件(如面包屑、下拉菜单、轮播等)的 CSS 规则,以支持 RTL。生成的bootstrap.rtl.css还反转填充、边距、 float 等的“开始”和“结束”方向...

  • 所以构建过程基本上是...... SASS files > compile with SASS > boostrap.css (在注释中包含特殊的 RTLCSS 指令)> compile with RTLCSS > boostrap.rtl.css尽你所能 see here ,您可以使用 SASS 更改生成的 CSS,但生成的 CSS 仍需要使用 RTLCSS 进行后处理,以便生成可在浏览器中使用的 CSS 规则...
    萨斯:
    $font-weight-bold: 700 #{/* rtl:600 */} !default;
    对于我们的默认 CSS 和 RTL CSS,它将输出到以下内容:
    /* bootstrap.css */
    dt {
    font-weight: 700 /* rtl:600 */;
    }

    /* bootstrap.rtl.css */
    dt {
    font-weight: 600;
    }
    因此,您需要使用 RTLCSS 进行后期处理才能在 compiled.css 中获得您期望的结果。 .如果你不想像 Bootstrap 那样使用 RTLCSS,你可以简单地使用 dir=rtl 添加 CSS 规则。选择器..
    body {
    background-color: red;
    }

    body[dir='rtl'] {
    direction: rtl;
    background-color: blue;
    }
    Demo

    关于twitter-bootstrap - 如何在 scss 中启用 Bootstrap rtl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67055428/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com