我試圖通過旋轉 3 個 div(.line 1、.line2 和 .line3)來制作動畫,點擊另一個 div (#burger)。3 個 div 圍繞 #burger div(這些位于 .js 文件中):<div id="burger" onClick={activateResponsiveMenu} className={navbarStyles.burger} > <div className={navbarStyles.line1}></div> <div className={navbarStyles.line2}></div> <div className={navbarStyles.line3}></div> </div>CSS 寫入 .scss 文件并作為“navbarStyles”導入。在 CSS 中,我通過向 #burger div 添加“clicked”類來對 div 進行動畫處理。至于動畫,我希望 .line1 和 .line3 div 旋轉,.line 2 消失:.clicked .line1 { transform: rotate(-45deg translate(-5px, 6px));}.clicked .line2 { opacity: 0;}.clicked .line3 { transform: rotate(45deg translate(-5px, -6px));}在 #burger 上切換 .clicked 類的 JS 函數如下:const activateResponsiveMenu = () => { const burger = document.querySelector("#burger") burger.classList.toggle(navbarStyles.clicked)}問題是,雖然 .line2 div 的不透明度在單擊 #burger 時變為 0,但 CSS 轉換不起作用,并且 .line1 和 .line3 不旋轉。正在應用所有其他樣式。
1 回答

千萬里不及你
TA貢獻1784條經驗 獲得超9個贊
根據轉換規范,值應該以空格分隔https://developer.mozilla.org/en-US/docs/Web/CSS/transform這會使您的語法無效,您應該使用以下格式
transform: rotate(-45deg) translate(-5px, 6px);
- 1 回答
- 0 關注
- 149 瀏覽
添加回答
舉報
0/150
提交
取消