Material UI:非常強大的CSS框架
本文由碼農網 – 小峰原創,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃!
Material UI 是一款功能非常強大,介面卻十分清新簡潔的CSS框架,Material UI利用了Google的Material Design 全新設計語言,並且讓每一個UI元件都變得非常獨立,因此開發者使用Material UI也會比較簡單。和Bootstrap類似,Material UI提供了很多常用的UI元件,除了最基本的選單、按鈕、滑動杆、進度條、單選框/核取方塊外,它還提供了一個非常有趣的日曆元件,另外還提供了一些很有趣的圖示。
Material UI 的特點
- 元件很豐富,每一個元件的風格比較一致。
- 提供了 npm 包的形式,使用起來相對比較方便。
- 這一切都是開源的,你可以任意使用這個開源的CSS框架。
Material UI 的應用例項
首先我們從最基本的看起。
選單
下面是一個簡單的多級下拉選單
程式碼如下:
nestedMenuItems = [ { type: mui.MenuItem.Types.NESTED, text: 'Reports', items: [ { payload: '1', text: 'Nested Item 1' }, { type: mui.MenuItem.Types.NESTED, text: 'Nested Item 2', items: [ { payload: '1', text: 'Nested Item 2.1' }, { type: mui.MenuItem.Types.NESTED, text: 'Nested Item 2.2', items: [ { payload: '1', text: 'Nested Item 2.2.1' }, { payload: '3', text: 'Nested Item 2.2.2' } ] }, { payload: '3', text: 'Nested Item 2.3' } ] }, { payload: '3', text: 'Nested Item 3' }, { type: mui.MenuItem.Types.NESTED, text: 'Nested Item 4', items: [ { payload: '1', text: 'Nested Item 4.1' }, { type: mui.MenuItem.Types.NESTED, text: 'Nested Item 4.2', items: [ { payload: '1', text: 'Nested Item 4.2.1', disabled: true }, { payload: '3', text: 'Nested Item 4.2.2' } ] }, { payload: '3', text: 'Nested Item 4.3' } ] }, { payload: '4', text: 'Nested Item 5' } ] }, { payload: '1', text: 'Audio Library'}, { payload: '2', text: 'Settings'}, { payload: '3', text: 'Logout', disabled: true} ]; <Menu menuItems={nestedMenuItems} autoWidth={false}/>
下面是一個帶圖示的垂直選單
程式碼如下:
//iconClassName is the classname for our icon that will get passed into mui.FontIcon iconMenuItems = [ { payload: '1', text: 'Live Answer', iconClassName: 'muidocs-icon-communication-phone', number: '10' }, { payload: '2', text: 'Voicemail', iconClassName: 'muidocs-icon-communication-voicemail', number: '5' }, { payload: '3', text: 'Starred', iconClassName: 'muidocs-icon-action-stars', number: '3' }, { payload: '4', text: 'Shared', iconClassName: 'muidocs-icon-action-thumb-up', number: '12' } ]; <Menu menuItems={iconMenuItems} autoWidth={false}/>
按鈕
下面是簡單的彩色按鈕,點選按鈕會出現波浪擴散的動畫效果。
程式碼如下:
//Raised Buttons <RaisedButton label="Default" /> <RaisedButton label="Primary" primary={true} /> <RaisedButton label="Secondary" secondary={true} /> <div style={styles.container}> <RaisedButton primary={true} label="Choose an Image"> <input type="file" style={styles.exampleImageInput}></input> </RaisedButton> </div> <div style={styles.container}> <RaisedButton linkButton={true} href="https://github.com/callemall/material-ui" secondary={true} label="Github"> <FontIcon style={styles.exampleButtonIcon} className="muidocs-icon-custom-github"/> </RaisedButton> </div> <RaisedButton label="Disabled" disabled={true} />
美化單選框核取方塊
下面是Material UI經過美化過的單選框和核取方塊
程式碼如下:
<RadioButtonGroup name="shipSpeed" defaultSelected="not_light"> <RadioButton value="light" label="prepare for light speed" style={{marginBottom:16}} /> <RadioButton value="not_light" label="light speed too slow" style={{marginBottom:16}}/> <RadioButton value="ludicrous" label="go to ludicrous speed" style={{marginBottom:16}} disabled={true}/> </RadioButtonGroup>
日曆元件
這是個人覺得最漂亮的CSS日曆元件
程式碼如下:
//Portrait Dialog <DatePicker hintText="Portrait Dialog" //Landscape Dialog <DatePicker hintText="Landscape Dialog" mode="landscape"/> // Ranged Date Picker <DatePicker hintText="Ranged Date Picker" autoOk={this.state.autoOk} minDate={this.state.minDate} maxDate={this.state.maxDate} showYearSelector={this.state.showYearSelector} />
Material UI還有很多有用的CSS UI元件,你可以前往其官方網站下載及學習使用。
本文連結:http://www.codeceo.com/article/material-ui.html
本文作者:碼農網 – 小峰
[ 原創作品,轉載必須在正文中標註並保留原文連結和作者等資訊。]
相關文章
- 8個強大的基於Bootstrap的CSS框架bootCSS框架
- Metro UI CSS : Win 8 Metro風格的CSS框架UICSS框架
- 強大的CSS:placeholder-shown偽類實現Material Design佔位符互動效果CSSMaterial Design
- 15個不起眼但非常強大的 Vim 命令
- 10個頂級的CSS UI開源框架CSSUI框架
- Material-UI 使用反饋UI
- 非常棒的CSS教程CSS
- 強大的CSS動畫:Transition與AnimationCSS動畫
- 合理使用CSS框架,加速UI設計程式CSS框架UI
- 現代化 React UI 庫:Material-UI 詳解!ReactUI
- 強大的CSS:顏色、背景和剪下CSS
- Vue引入vxe-table(一個功能非常強大的表格元件)Vue元件
- 2019年幾大主流的前端框架(UI/JS)框架前端框架UIJS
- 小謝第8問:ui框架的css樣式如何更改UI框架CSS
- 強大的CSS:文字下波浪線動畫效果CSS動畫
- 一個非常正確且強大的程式設計學習方法程式設計
- Eclipse的編輯功能非常強大,掌握了Eclipse快捷鍵Eclipse
- 探索Django REST框架構建強大的APIDjangoREST框架架構API
- 8個非常有用的CSS工具CSS
- 強大的CSS:圖形繪製合集,方便你我!CSS
- 強大的 Node.js Web 框架 - Daze.jsNode.jsWeb框架
- Golang中的強大Web框架Fiber詳解GolangWeb框架
- RazorSQL Mac—一個功能非常強大資料庫查詢工具SQLMac大資料資料庫
- 常見的UI框架UI框架
- CSS三個非常重要的特性分享!CSS
- 強大的CSS:模擬下雪效果動畫製作教程CSS動畫
- 10個強大的純CSS3動畫案例分享CSSS3動畫
- AT-UIの入手某東的UI框架UI框架
- UI框架研究工作,不可不看的13個UI框架UI框架
- Beego:簡約 & 強大並存的 Go 應用框架Go框架
- 一個小巧而強大的 Key-Value 管理框架框架
- ent - 一個強大的Go語言實體框架Go框架
- 10 個非常有用的 AngularJS 框架AngularJS框架
- 10 個非常有用的AngularJS 框架AngularJS框架
- 純CSS Material Design風格按鈕CSSMaterial Design
- Laravel框架的基石就是一個功能強大的 IoC 容器Laravel框架
- web ui 框架WebUI框架
- Web經典B/S快速開發框架,強大後臺+簡潔UI一體化開發工具Web框架UI