研究了下Houdini中的CSS Layout API
一、基本概念和一些屬性API
CSS Layout API
可以讓開發者自定義佈局方式,例如實現瀑布流佈局效果,全新的表格佈局效果等。
CSS Layout API
的使用分為兩部分。
第1部分是在CSS中設定自定義的佈局名稱,和Flex佈局、Grid佈局一樣,也是使用display
屬性,區別在於CSS Layout API
自定義的佈局使用layout()
函式表示。
例如自定義一個瀑布流佈局名為'masonry'
,則在CSS中使用的語法就會是下面這樣:
.container {
display: layout(masonry);
}
第2部分是使用JavaScript書寫關於如何佈局的功能模組。CSS Layout API已經約定好了佈局模組書寫的語法,如果單看規範文件,會覺得像天書一樣,無從下手,實際上,自定義佈局的程式碼書寫是有固定的套路的,也就是大體的JavaScript程式碼框架都是固定的,只需要在指定的函式位置書寫對容器元素以及容器子元素的位置和尺寸進行設定的程式碼就可以實現想要的效果了。
舉個例子,要自定義一個瀑布流佈局效果,JavaScript部分的程式碼該如何書寫呢?
首先在頁面中需要呼叫關於瀑布流佈局的模組,可以使用layoutWorklet
,具體程式碼如下所示:
if ('layoutWorklet' in CSS) {
// 把自定義的瀑布流佈局指令碼添
相關文章
- CSS Houdini: Properties, Values, and the Paint APICSSAIAPI
- css layoutCSS
- 用CSS Houdini畫一片星空CSS
- css26 CSS Layout - The display PropertyCSS
- CSS Houdini:用瀏覽器引擎實現高階CSS效果CSS瀏覽器
- CSS文字:layout-flow(轉)CSS
- 用CSS Houdini實現一個Material風格的按鈕CSS
- CSS文字:layout-grid(轉)CSS
- css27 CSS Layout - width and max-widthCSS
- css32 CSS Layout - display: inline-blockCSSS3inlineBloC
- Weex-iOS原始碼-CSS Layout 分析iOS原始碼CSS
- CSS Grid Layout 手記(教程指南)CSS
- Houdini在UE4特效中的嘗試分享特效
- 擁抱更底層技術——從CSS變數到HoudiniCSS變數
- CSS文字:layout-grid-line(轉)CSS
- IE CSS Bug系列:有layout的元素無法浮動CSS
- Selenium的WebDriver API元素定位中的XPath和CSSWebAPICSS
- [譯] Houdini:也許是你未曾聽過的最振奮人心的 CSS 進化CSS
- houdini vex 知識
- 安卓中gravity和layout_gravity的區別安卓
- 【API】api 下 session 的 Yes or No?APISession
- Houdini - 建立自定義的button樣式
- jdonframe 的api文件提供了下載嗎,我沒有找到API
- Yii2 layout 由 controller 向layout中傳遞引數值Controller
- Android中的layout_gravity與gravity屬性Android
- css深入研究CSS
- 來了來了,CSS 版的冰墩墩來了……CSS
- 今天研究了一下vue分頁外掛Vue
- 華安證券研究:APP中的零工經濟研究(附下載)APP
- CSS並不簡單:多欄佈局(Multi-Columns Layout)CSS
- 程式中載入layout以及提交請求
- 從QQ登入的jssdk中,研究html、css以及js的解耦JSHTMLCSS解耦
- [Android]Layout中ImageView中圖片的對齊顯示問題AndroidView
- CSS中的“大白”——CSS 動畫CSS動畫
- Houdini 19,電影特效設計特效
- 和Houdini,CSSPaintAPI打個招呼吧CSSAIAPI
- Houdini Development Kit ( HDK ) VC小記dev
- Css Font 詳細研究CSS