自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一個側(cè)邊欄導(dǎo)航組件實現(xiàn)思路

開發(fā) 前端
在這篇文章中,我想和大家分享我是如何為 web 原型化一個 Sidenav 組件的,這個組件是響應(yīng)式的,有狀態(tài)的,支持鍵盤導(dǎo)航,可以使用和不使用 Javascript,并且可以跨瀏覽器工作。

 [[378862]]

在這篇文章中,我想和大家分享我是如何為 web 原型化一個 Sidenav 組件的,這個組件是響應(yīng)式的,有狀態(tài)的,支持鍵盤導(dǎo)航,可以使用和不使用 Javascript,并且可以跨瀏覽器工作。

構(gòu)建一個響應(yīng)式導(dǎo)航系統(tǒng)是很困難的。有些用戶使用鍵盤,有些用戶使用強(qiáng)大的臺式機(jī),還有一些用戶使用小型移動設(shè)備訪問。每個訪問者都應(yīng)該能夠打開和關(guān)閉菜單。

圖片

桌面到移動設(shè)備響應(yīng)式布局演示

用了哪些技術(shù)

在這次組件探索中,我很高興地結(jié)合了一些關(guān)鍵的網(wǎng)絡(luò)平臺特性:

  • 偽類
  • CSS Grid
  • transforms
  • 媒體查詢和用戶偏好 CSS
  • 用戶增強(qiáng)體驗

我的解決方案只有一個側(cè)邊欄,只有在“移動”視口為540px 或更小時才能切換。540px 將是我們在移動交互式布局和靜態(tài)桌面布局之間切換的斷點。

偽類

一個<a> 鏈接將 url 散列設(shè)置為 #sidenav-open,另一個設(shè)置為 empty('')。最后,一個元素具有匹配散列的 id:

  1. <a href="#sidenav-open" id="sidenav-button" title="Open Menu" aria-label="Open Menu"
  2. <a href="#" id="sidenav-close" title="Close Menu" aria-label="Close Menu"></a> 
  3. <aside id="sidenav-open"></aside> 

  圖片

點擊這些鏈接會改變我們網(wǎng)頁 URL 的散列狀態(tài),然后用一個偽類來顯示和隱藏 Sidenav:

  1. @media (max-width: 540px) { 
  2.     #sidenav-open { 
  3.         visibility: hidden; 
  4.     } 
  5.      
  6.     #sidenav-open:target { 
  7.         visibility: visible; 
  8.     } 

CSS Grid

在過去,我只使用絕對或固定位置 Sidenav 布局和組件。不過,使用網(wǎng)格區(qū)域語法,可以為同一行或列分配多個元素。

Stacks

主要的布局元素 #sidenav-container 是一個網(wǎng)格,它創(chuàng)建了 1 行和 2 列,其中 1 列被命名為 stack。當(dāng)空間受到限制時,CSS 會將所有

 

<main>元素的子元素賦給同一個網(wǎng)格名稱,將所有元素放在同一個空間中,創(chuàng)建一個堆棧。
  1. #sidenav-container { 
  2.     display: grid; 
  3.     grid: [stack] 1fr / min-content [stack] 1fr; 
  4.     min-height: 100vh; 
  5.  
  6. @media (max-width: 540px) { 
  7.     #sidenav-container > * { 
  8.         grid-area: stack; 
  9.     } 

菜單背景

 

責(zé)任編輯:姜華 來源: 大海我來了
相關(guān)推薦

2023-06-06 15:38:28

HTMLCSS開發(fā)

2016-12-07 10:18:44

移動應(yīng)用開發(fā)底部導(dǎo)航android

2022-07-15 16:39:46

ETS導(dǎo)航欄組件

2021-08-19 09:05:36

頂部導(dǎo)航左側(cè)導(dǎo)航瀏覽

2023-10-23 08:48:04

CSS寬度標(biāo)題

2020-12-09 11:32:10

CSS前端代碼

2012-01-12 10:09:55

Elementary 思路

2016-12-07 10:27:16

移動應(yīng)用開發(fā)底部導(dǎo)航android

2022-11-15 18:31:37

React

2009-06-24 09:36:52

XML實現(xiàn)breadcMVC

2016-12-07 10:02:54

移動應(yīng)用開發(fā)底部導(dǎo)航android

2015-07-30 14:43:04

導(dǎo)航欄iOS開發(fā)

2022-08-29 07:48:27

文件數(shù)據(jù)參數(shù)類型

2022-01-17 11:41:50

前端Vite組件

2021-11-03 14:49:20

開發(fā)摸魚側(cè)邊欄

2021-06-21 15:49:39

React動效組件

2023-04-28 09:30:40

vuereact

2016-12-07 10:32:14

移動應(yīng)用開發(fā)底部導(dǎo)航android

2016-12-07 10:58:35

移動應(yīng)用開發(fā)底部導(dǎo)航android

2022-09-22 12:38:46

antd form組件代碼
點贊
收藏

51CTO技術(shù)棧公眾號