我正在研究CSS/HTML應用程序,沒有JavaScript,沒有第三方框架或插件。
該應用程序有很多CSS3動畫。
構建我的css文件和類的最佳方法是什麼,所以我不再重複我的代碼?CSS3動畫項目結構
-1
A
回答
1
我會建議使用Sass pre-processor來編寫你的CSS(尤其是SCSS版本),它可以確保你的最終輸出儘可能地乾燥,而且不需要冗餘。
我建議以下目錄結構,組織你的Sass/SCSS文件,
styles/
|
|-- partials/
| |-- _bounce.scss
| |-- _fade.scss
| |-- _flip.scss
| |-- _rotate.scss
| |-- _wobble.scss
|
`-- animations.scss # Primary Sass file
的animations.scss
文件將是你的主要SCSS文件,將導入所有的諧音。在partials
目錄中,您可以爲每種類型的動畫維護一個單獨的SCSS文件。
這將大量幫助您組織項目,並且解決方案具有可擴展性。例如,看看這個存儲庫是如何爲animate.scss設計的。
1
我會創建一個animations.css
其中包含所有的動畫和轉換。你應該通過一個課程來解決他們 - 然後可以重新使用。
Pankaj Parashar所回答的所有問題也適用於純CSS。 Import the single CSS files using @import
。以下是一個微調器的例子(例如AJAX加載圖標)。任何類.spin
的元素都會翻過來再次翻轉。但與使用SCSS或更少的混入,你必須對自己的
animations.css創建所有供應商的前綴變體:
@keyframes spin {
0% { transform:rotate(0deg) }
100% { transform:rotate(359deg) }
}
.spin {
animation:spin 2s infinite linear
}
的style.css:
@import 'animations.css'
/* further rules */
相關問題
- 1. CSS3動畫結束技術
- 2. 動畫選項HTML5畫布/ CSS3/jQuery
- 3. css3轉換:浮動項目上的流體佈局動畫
- 4. Firefox css3動畫
- 5. CSS3 Div動畫
- 6. CSS3 onclick動畫
- 7. CSS3&jQuery動畫
- 8. CSS3動畫
- 9. 動畫CSS3
- 10. 從CSS3動畫
- 11. HTML5/CSS3動畫
- 12. CSS3動畫
- 13. CSS3浮動動畫
- 14. css3動畫與彈跳結束
- 15. CSS3動畫+ @keyframe運行直到結束
- 16. 框架結束時CSS3動畫閃爍
- 17. JS異步調用凍結css3動畫
- 18. CSS3轉換在動畫結束前獲取目標參數值
- 19. css3列+響應式佈局:動畫項目位置changes.using css3或jquery/javascript
- 20. 如何使項目與css3動畫下降
- 21. 在CSS3中動畫項目的位置列布局
- 22. CSS3關鍵幀跳轉到動畫結束時沒有動畫
- 23. Subversion項目結構?
- 24. Django項目結構,
- 25. Maven項目結構
- 26. CUDA項目結構
- 27. Android項目結構
- 28. Knockout.js項目結構
- 29. NUnit項目結構
- 30. AngularJS項目結構
欣賞的響應。由於性能開銷,我故意不建議在CSS中使用'@ import'語句,這裏有大量記錄 - http://www.stevesouders.com/blog/2009/04/09/dont-use-import/ –
另外,OP旨在避免重複的代碼,這是很難用CSS實現的。 –
@PankajParashar最後一點是這個定義的問題。我在SCSS/LESS中看到很多糟糕的示例,它們的代碼都是在mixin中組織的,但是使用mixin調用而不是[extends](http://sass-lang.com/documentation/file.SASS_REFERENCE.html#擴展),從而在最終輸出中創建大量重複代碼的臃腫CSS代碼。要使用預處理器創建高性能的CSS,您應該首先了解CSS, – feeela