常用元件 / 導航欄及圖示
常用元件
筋斗雲框架有一些使用mui字首的CSS類,包括:
- mui-container H5應用容器,一般在HTML的body物件上設定。
- mui-page 邏輯頁,由框架自動設定
- mui-btn 按鈕,如果再疊加primary類,則表示顯示為預設按鈕。
- mui-dialog 對話方塊
- mui-menu 選單
- mui-navbar 導航欄
注意:筋斗雲框架不是UI元件庫,它只提供極為有限的一些元件,更豐富的UI元件請使用weui庫或其它第三方元件庫。
如果想調整框架中元件的顯示樣式,一般在app.css檔案中設定。
導航欄及圖示
[任務]
- 為H5應用底部導航欄上每項加上圖示,且點中與未點中顯示的圖示不一樣。
- 將小圖示拼合成大圖優化圖示資源載入。
導航欄用CSS類"mui-navbar"標識。
這是訂單列表頁中的例子,用導航欄和幾個列表構建一個多欄頁面, 當點選一項時,框架會自動為該項新增CSS類"active",並只顯示"mui-linkto"屬性指向的元件。 被指向的元件僅限於當前邏輯頁面:
<div class="mui-navbar">
<a mui-linkto="#lst1">待服務</a>
<a mui-linkto="#lst2">已完成</a>
</div>
整個H5應用有一個底部導航,用id="footer"標識,放置在H5應用的主html檔案中,如:
<div id="footer">
<a href="#home" mui-opt="ani:'none'">
<span>首頁</span>
</a>
<a href="#orders" mui-opt="ani:'none'">
<span>訂單</span>
</a>
<a href="#me" mui-opt="ani:'none'">
<span>我</span>
</a>
</div>
底部導航可自動顯示或隱藏,如果當前頁面是在導航項中的,導航欄就會自動顯示。
上面mui-opt
屬性用來指定顯示頁面的引數(參考MUI.showPage
的引數),"ani:'none'"表示不顯示動畫切頁效果。
如果要給導航中的每項加圖片,可以用CSS類icon:
<a href="#home" mui-opt="ani:'none'">
<i class="icon icon-home"></i>
<span>首頁</span>
</a>
定義一個CSS類icon-home為它指定圖示即可。 由於點選一項時會自動給該項加上active類,所以要想控制當前選中項或未選中項顯示不同的圖片,可以設定:
.icon-home {
background-image: url(icon/24/home.png);
}
.active .icon-home {
background-image: url(icon/24/home-active.png);
}
這些圖示一般建議放在server/icon目錄下,並最終在釋出時優化拼合成一張大圖,稱為製作“精靈圖”(sprite)。
對圖示的CSS設定一般寫在icon.css中,然後使用jdcloud-sprite工具生成拼合後的大圖以及icon.out.css在H5應用中使用。 檢視index.html可知它實際引用的是優化後的icon.out.css檔案,icon.css只是作為原始檔,用於生成icon.out.css。
在開發時,建議先把圖示的CSS定義分別在icon.css與icon.out.css中各寫一份。 待準備做優化時,只需在一臺可製作精靈圖的電腦上一次性生成icon.out.css比較方便。
圖示優化方法(製作精靈圖)
先安裝imagemagick軟體,確認在命令列中可以執行convert等命令。 安裝好php 5.4或更高版本,然後在專案的tool目錄下,執行命令:
php jdcloud-sprite.php ../server/icon.css -2x -group -sprite icon/icon@2x.png
檢視server/icon.out.css檔案是否已更新?在server/icon目錄下是否生成了拼合後的大圖?
命令中引數-2x
表示源圖示都是2x圖示,即顯示為24x24大小的圖示,其實際尺寸是48x48。
在手機上一般使用2x圖示,否則會看出有些模糊。
引數-group
表示按圖示寬度分組拼合圖片,這樣效率更高些,也可以去掉這個引數。
其實在檔案tool/Makefile中已經包含了這個命令,確保開發環境有make工具, 就可以在git-bash中直接執行下面命令來優化圖示:
./make-sprite.sh
相關文章
- svelte自定義元件|導航條Navbar及選單欄Tabbar元件tabBar
- CSS 導航欄元素居中顯示CSS
- CSS導航欄及下拉選單CSS
- APP中,用mui做的底部導航欄,引用外部圖示APPUI
- 滾動cell 顯示隱藏導航欄
- jQuery側邊欄隱藏和顯示導航jQuery
- UIView顯示時遮擋導航欄的方法UIView
- WordPresscategory導航欄Go
- CSS如何讓浮動導航欄元素居中顯示CSS
- qml 導航欄TabBar 工具欄ToolBartabBar
- 基於鴻蒙ArkUI封裝標題欄TitleBar導航元件鴻蒙UI封裝元件
- Android 顯示、隱藏狀態列和導航欄Android
- 網頁佈局------導航欄下標縮放顯示網頁
- GitHub 導航欄加強Github
- HTML橫向導航欄HTML
- Flutter 導航欄AppBarFlutterAPP
- Tablayout實現導航欄TabLayout
- iOS 導航欄的控制iOS
- bootstrap導航欄學習boot
- 快速實現底部導航欄及未讀訊息
- Flutter學習筆記--仿閒魚底部導航欄帶有中間凸起圖示Flutter筆記
- 粘性控制元件,滑動停留StickLayout(導航欄滑動停留)控制元件
- ElementUI側邊欄導航選單隱藏顯示問題UI
- JavaScript實現HTML導航欄下拉選單[懸浮顯示]JavaScriptHTML
- iOS 導航欄背景顏色完全透明及漸變iOS
- uniapp自定義導航欄APP
- 前端切圖練習,仿嗶哩嗶哩導航欄前端
- App之上下滑動UIScrollview隱藏或者顯示導航欄APPUIView
- 解決win10左側導航欄出現兩個隨身碟圖示的方法Win10
- 醫院內導航及智慧導醫,懶圖科技“院內導航地圖”為患者指路!地圖
- Win10系統下怎麼禁止資源管理器導航欄顯示兩個U盤圖示Win10
- 微信小程式自定義導航欄微信小程式
- ios自定義簡約導航欄iOS
- iOS導航欄佈局相關iOS
- HarmonyOS NEXT 5.0自定義增強版導航欄元件|鴻蒙ArkUI自定義標題欄元件鴻蒙UI
- Vscode導航欄開啟多個檔案換行顯示VSCode
- Win10系統下怎麼禁止資源管理器導航欄顯示兩個隨身碟圖示Win10
- vue快捷工具元件:小地圖導航、全屏、重新整理Vue元件地圖