4

FluentUI フレームワークの一部である Microsoft の mergeStyles ユーティリティを使用して、SCSS コードを React コンポーネントに移動しようとしています。"::before" をセレクタ プロパティとして指定する方法がわかりません。何らかの理由で、mergeStyles() は ":hover::before" を認識しましたが、それ自体では "::before" を認識しませんでした。たとえば、以下のコードのコメントを参照してください。どんな助けでも感謝します。ありがとうございました。

export const getClassNames = (): ISidebarClassNames => {
    return mergeStyleSets({
        sideNavItem: {
            position: "relative",
            selectors: {
                ":not(:last-child)": {
                    marginBottom: ".5rem",
                },
               // This works and "hover::before" does indeed triggers "scaleY(1)".  
               // Why then does "::before" not work on its own (see below)?
                ":hover::before": {
                    transform: "scaleY(1)",
                },
                // TODO: This does not work in mergeStyles() but does work if coded in SCSS. 
                "::before": {
                    content: "",
                    position: "absolute",
                    top: 0,
                    left: 0,
                    bottom: 0,
                    width: "3px",
                    backgroundColor: "red",
                    transform: "scaleY(0)",
                }
            }
        }
4

1 に答える 1