MDUI文件
複製 llms.txt 連結複製 llms-full.txt 連結以 Markdown 格式檢視此頁與 ChatGPT 討論此頁內容與 ChatGPT 討論專案完整文件
預設顏色
自選顏色
從桌布擷取顏色
請選擇一張桌布
開發指南
AI 輔助開發
樣式
與框架整合
元件
Avatar 頭像Badge 徽章BottomAppBar 底部應用程式列Button 按鈕ButtonIcon 圖示按鈕Card 卡片Checkbox 核取方塊Chip 標籤CircularProgress 環形進度條Collapse 收合區塊Dialog 對話框Divider 分隔線Dropdown 下拉元件Fab 浮動動作按鈕Icon 圖示Layout 版面配置LinearProgress 線性進度條List 清單Menu 選單NavigationBar 底部導覽列NavigationDrawer 導覽抽屜NavigationRail 側邊導覽列Radio 單選按鈕RangeSlider 範圍滑桿Select 選擇框SegmentedButton 分段按鈕Slider 滑桿Snackbar 消息條Switch 切換開關Tabs 分頁TextField 文字欄位Tooltip 工具提示TopAppBar 頂部應用程式列
函式
獨立程式庫

Layout版面配置

版面配置元件提供了一個靈活的版面配置系統,用於建立複雜的頁面版面配置。

使用方法

按需引入元件:

import 'mdui/components/layout.js';
import 'mdui/components/layout-item.js';
import 'mdui/components/layout-main.js';

按需引入元件的 TypeScript 型別:

import type { Layout } from 'mdui/components/layout.js';
import type { LayoutItem } from 'mdui/components/layout-item.js';
import type { LayoutMain } from 'mdui/components/layout-main.js';

介紹:

版面配置系統採用由外而內的方式組成。每個版面配置元件(<mdui-layout-item> 元件)都會在四個方向之一(上、下、左、右)佔據空間,後續的版面配置元件則會在剩餘空間中繼續佔位。

以下元件直接繼承自 <mdui-layout-item> 元件,因此也可以作為版面配置元件使用:

版面配置系統的最後一部分是 <mdui-layout-main> 元件,它會佔據剩餘空間,你可以在該元件內放置頁面內容。

範例

版面配置元件順序

預設情況下,版面配置元件會按照在程式碼中出現的順序來佔據空間。你可以從下面兩個範例來理解這個概念,這兩個範例中,<mdui-top-app-bar><mdui-navigation-drawer> 在程式碼中出現的順序不同。

請在大螢幕顯示器上查看該範例。

可以發現,將 <mdui-top-app-bar> 放在 <mdui-navigation-drawer> 之前時,<mdui-top-app-bar> 會率先佔滿螢幕的寬度,而 <mdui-navigation-drawer> 只能在剩餘的空間內佔滿高度。調換二者順序後,<mdui-navigation-drawer> 則會率先佔滿螢幕的高度,而 <mdui-top-app-bar> 只能在剩餘的空間內佔滿寬度。

版面配置元件位置

對於 <mdui-layout-item> 元件,你可以使用 placement 屬性來指定其在版面配置中的上、下、左、右位置。對於 <mdui-navigation-drawer><mdui-navigation-rail> 元件,你也可以使用 placement 屬性來指定其在版面配置中的左、右位置。

下面的範例中,我們將兩個 <mdui-layout-item> 元件放在了應用的兩側。

自訂版面配置元件順序

在大多數情況下,只要按順序放置版面配置元件,就能做出你想要的版面配置。

你也可以使用 order 屬性來指定版面配置順序,系統將按 order 的值從小到大排列元件,order 相同時則按程式碼順序排列。所有版面配置元件的預設 order 皆為 0

mdui-layout-item API

屬性

HTML 屬性JavaScript 屬性Reflect型別預設值
placementplacement'top' | 'bottom' | 'left' | 'right''top'

元件的位置。可選值包括:

  • top:上方
  • bottom:下方
  • left:左側
  • right:右側
orderordernumber-

該元件在 <mdui-layout> 中的版面順序,按從小到大排序。預設為 0

Slots

名稱
預設

可以包含任意內容

mdui-layout-main API

Slots

名稱
預設

可以包含任意內容

mdui-layout API

屬性

HTML 屬性JavaScript 屬性Reflect型別預設值
full-heightfullHeightbooleanfalse

設定目前版面的高度為 100%

Slots

名稱
預設

可以包含 <mdui-top-app-bar><mdui-bottom-app-bar><mdui-navigation-bar><mdui-navigation-drawer><mdui-navigation-rail><mdui-layout-item><mdui-layout-main> 元素

本頁目錄