欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

ReactJS風格& # 39;漏水& # 39;到其他組件

林玟書2年前8瀏覽0評論

所以我有兩個組件...導航欄組件和AboutPage組件。

它們都在同一個目錄中,“App”

應用

- Navbar - >Navbar.css,Navbar.js

- AboutPage - >Aboutpage.css,Aboutpage.js

如你所見,它們有兩個獨立的樣式表。 在JS頁面中,正確的CSS文件也被導入。

舉例來說,當我創(chuàng)作這樣的風格時:

導航條組件

p { background: red }

^^:這種風格也適用于Aboutpage中的p。我甚至試圖在Aboutpage中給P一個id,并以這種方式設計它,但還是失敗了。

這是意料之中的行為。

不管你在哪個文件中指定了p { background: red }這樣的規(guī)則,它都會被應用到所有的DOM中。 將和id屬性指定為也不起作用。上述規(guī)則足夠普遍,適用于所有& ltp & gt南

如果要為每個組件指定css文件,還應該創(chuàng)建特定于組件的css類。比如下面這個例子。

import React from 'react';
import './DottedBox.css';

const DottedBox = () => (
  <div className="DottedBox">
    <p className="DottedBox_content">Get started with CSS styling</p> 
  </div>
);

export default DottedBox;

及其css文件:

.DottedBox {
  margin: 40px;
  border: 5px dotted pink;
}

.DottedBox_content {
  font-size: 15px;
  text-align: center;
}

如果您想要為React定義css的不同方法,除了上面的方法之外,本參考資料還添加了另外3種方法。

也可以使用css模塊。他們在本地搜索你的CSS,非常棒

組件的范圍樣式需要WebComponents,它依賴于幾個新的瀏覽器特性,特別是shadow root“shadown DOM ”,它直接支持這種分離。這些最容易與lit-element和/或聚合物3一起使用。

有時我們需要一個全局CSS,即使我們使用模塊導入,它也可能影響另一個組件,我在官方文檔中沒有找到任何答案,所以我的解決方法是在組件本身中使用類似下面的代碼,它工作得很好:)

<style>
            {
            `
               @page {
                padding:0;
                margin-top:0;
                margin-bottom: 0;
                margin-left: 0;
                margin-right:0;
            }
            @media print {
              @page {
                size: 80mm 21cm;
             }
            }
            `
            }
        </style>

為了防止css類的一個組件影響到其他組件,你可以嘗試使用。css文件名的模塊擴展名。

-導航條-& gt;Navbar.css,Navbar.js

重命名為

-導航條-& gt;Navbar.module.css,Navbar.js

當你加上。css文件名上的模塊擴展名,它只會影響您將要導入的組件。

如果你想查看更多信息,這個資源會有所幫助