真移動友好回應菜單四要素
有數百種方法可以創建響應性導航,僅限于您的創造力和CSS實現邊界。良好的響應導航有點困難;響應菜單必須成為符合要求和觸摸驅動規定的移動菜單。手機設計日新月異,因此技術也在不斷發展。在本教程中,您將了解哪些移動友好響應菜單現在絕對需要,以及如何解決一些常見問題。
基本知識
在設計響應菜單時,必須首先考慮移動狀態以及用戶將如何與之交互。好移動導航包括以下原則:
菜單切換很容易識別所有的按鈕和鏈接,大到可以用指尖提供反饋,當一個項目被竊聽時,子項仍然可以訪問的視覺效果是保持代碼簡單,使用跨瀏覽器兼容性
例如,當屏幕大小在768像素以內(包括平板電腦和智能手機)時,我將通過一個簡單的響應菜單設計將其轉換為水平菜單,并將其轉換為畫布菜單。然后,我將向您展示如何轉換為更復雜的菜單下拉菜單、偽元素和轉換為應用程序樣式移動友好的垂直菜單。
每個菜單有四個部分
元素用戶點擊進入菜單,親切地稱為切換菜單本身,當轉換應該發生時,轉換如何發生
你還需要一個Vp meta標簽,以便在你的視圖中保持筆直,但我希望你已經知道:
lt;meta名稱=ldquo;”在視圖框中;內容=ldquo;寬度=設備寬度,初始比例=1rdquo;燃氣輪機;
從畫布菜單
雖然我們已經看到了一段時間的帆布抽屜網頁設計,谷歌材料設計模式庫移動的設計介紹,目前是由網頁設計師尋找堅實的指導采用移動第一網站。關閉畫布欄或菜單是谷歌推薦的方式移動導航,因為它適用于大多數設備和布局。如果你不想,你不需要遵循菜單設計指南,但是你可以遵循它在間隔和行為方面的建議。
在我們的例子中,菜單是一個非常簡單的無序列表。
lt;ULID=值gt;lt;李class=ldquo; 道岔;gt;<div等級=ldquo;聚類分析;燃氣輪機;lt;/()div)燃氣輪機;lt;div等級=ldquo;bar2rdquo; 燃氣輪機;lt;/()div)燃氣輪機;lt;div等級=ldquo;bar3rdquo; 燃氣輪機;lt;/()div)燃氣輪機;lt;/()李gt); lt;李gt; 書信電報;a href=rdquo;ldquo;燃氣輪機;住宅lt/agt;lt;/()李gt); lt;李gt; 書信電報;a href=rdquo;ldquo;燃氣輪機;lt/agt組合;lt;/()李gt); lt;李gt; 書信電報;a href=rdquo;ldquo;燃氣輪機;博客lt/agt;lt;/()李gt); lt;李gt; 書信電報;a href=rdquo;ldquo;燃氣輪機;聯系lt/agt;lt;/()李gt); lt;/()UL)燃氣輪機;
一個畫布菜單的滑動和推式布局工作,你需要把一切都在div。這div需要至少一個相對位置(因此我們知道絕對定位元素坐)和一個理想的過渡,使其流動良好。
容器{位置:相對;過渡:全部0.3秒
1恩達斯;菜單切換
這個菜單有更多的文本鏈接,不能輕松地放在智能手機屏幕上,所以我們需要把它轉換成一個垂直菜單。讓我們有一個更好的用戶體驗,我們需要給用戶一個菜單來切換訪問這個垂直菜單。不過,漢堡菜單的桌面設計與流行的網站相比,還是移動用戶識別** 為熟悉的界面元素。
我們可以讓我們的元素,在switch菜單之外,但是這個實現,把它放到菜單上,允許我們寫更少的CSS和jQuery來處理它的更改,這將導致在所有設備和移動瀏覽器中顯示和行為更加一致。
我選擇創建這個圖標的div元素,而不是使用圖標字體或Unicode字符,因為它將生成動畫,并在菜單打開時轉換為X。以下是三種創建方法:
#NAV.切換{顯示:無;位置:絕對位置;左:-55px;頂部:0;鼠標指針;背景:RGBA(0,0,0,0.6);填:15px15px10px;}#資產凈值。開關bar1,#NAV。開關。開關bar3{寬度:25px;
我們不希望漢堡包在桌面布局上可見,所以我們使用顯示:無;作為默認狀態。此按鈕位于左上角的畫布抽屜中。一個常見的錯誤是在桌面上設計ndash;太復雜的方式來理解這方面的定位開關。始終切換和控制部件。
此高度和寬度由焊盤切換,以55px平方蘋果iPhone結束是否為HMI指南中建議的** 小目標尺寸 44px 寬度44px 雖然Windows Phone的微軟用戶界面設計和交互指南建議在其設計標準單位中使用DP至少34px觸摸目標大小Android,但建議48DP可以在大多數屏幕48px上找到。我們** 承保55px。
** 后,在每個處理時間的過渡過渡我們將在竊聽或點擊中添加過渡。
2ndash; 菜單
這種特殊的菜單樣式非常簡單。使用首選的浮動方法在每個列表項下設置另一個內聯塊屬性非常重要。在下一節中,您將看到這些主要語句改變了菜單的垂直方向。
#NAV{文本對齊:居中;邊距:0;填:15px0;寬度:100%;}# NAV李{
3ndash; 媒體查詢和單擊事件
這是“的”和;只有當視圖寬度為768px或更小(平板電腦和智能手機的典型尺寸)時,媒體查詢才會關閉。查看完整代碼演示上方的CSS標簽。以下重點介紹了原始樣式更改中的一個重要部分:
ldquo;介質(** 大寬度:768px){。切換{display:block;}}#####################NAV){寬度:230px高度:100%;位置:絕對;頂部:0;右圖:-230px;}# NAV李{顯示:塊;}# NAV李:懸停,# NAV李:焦點{邊框顏色:透明;背景:
首先,我們改變顯示:無;我們的漢堡包顯示:塊;所以,它是可見的。
接下來,我們將資產凈值的寬度從100%更改為230px,并根據導航鏈接字體大小和填充高度自適應,將其設置為高度100%,之前的寬度為75px。
導航定位絕對使用等于其寬度的負值將容器230px向左偏移移動,我們將在下一節中介紹。
讓我們水平地堆疊列表項,然后重置內聯塊和塊。
** 后,在保持移動用戶的想法,我們需要添加一個重點國家使用的所有環節,因為它不會影響觸摸屏。我們還補充了:hover狀態規則可能是桌面用戶的瀏覽器窗口大小。
我們想切換到打開菜單時,它與觸摸設備點擊。我們還希望菜單滑動和移動內容,而不是下拉或重疊。這有助于避免出現問題的長菜單或widges屏蔽內容,防止不必要的滾動條,并避免出現問題的菜單內容,如具有較高z序列剪輯的flash或canvas元素。
通過單擊操作,我們將使用一個非常簡單的jQuery代碼段:
$(文檔).prepare(函數(){$(#39;切換到“39;),單擊(function(){$(#39#資產凈值rdquo;)。toggle類(開放);$(#39; 集裝箱 39;)toggle等級(#39;menu-open #39;);});;
這將檢測點擊(或自來水)切換和添加一個類打開資產凈值類別菜單中打開的主容器包裝我們的布局。這些課程將使我們能夠申請將其裝訂在一起。記住在項目工作4ndash中添加jQuery庫;行為
現在我們進入如何使菜單執行良好的CSS3轉換。我們剛剛添加了一個jQuery代碼段,在切換點時添加了一個類菜單來打開容器div。我們可以用容器樣式的規則(絕對定位元素的所有內容)來轉換這種類型的left。我們在左邊使用一個負數移動容器,因為菜單是正確的。
. 容器menu-open{轉換:轉換(-230px,0);
將我們的hamburger更改為X的open類用于設置組合旋轉和平移移動bar1以及要對角化的3D直方圖,hide 2用于使用不透明度。您可以使用display:no open(put)2,但它沒有利用轉換效果,只是閃爍。
#NAV。open.Barbar1{變換:旋轉(45度)平移(87px);}}}}}}}}}}}}}}}}}{NAV)。open。巴。2{不透明度:0;}}}###################NAV)。open.Barbar3{變換:旋轉(45度平移(7px,-)
這是使用媒體查詢將水平菜單轉換成畫布的基本知識,并使用jQuery檢測點擊事件顯示。
在下面的示例中,我將向您展示一個更復雜的菜單,以及如何解決一些特定問題,例如下拉工作以及如何使用jQuery檢測屏幕寬度。多級移動菜單
我不談這個菜單的設計;查看demo code選項卡中的詳細信息,了解如何使用布局和更改一些基本轉換flexbox的下拉操作高度值。接下來,我將重點介紹如何將這些類與多個頂級鏈接菜單子菜單在多個級別上對齊,并使用相同的標題元素logo。我們** 需要改變移動設備上的水平菜單行為和布局,但視覺樣式保持一致。
此菜單使用從過去的示例中學習的一些技術,例如將漢堡菜單添加到類jQuery以控制行為。接下來,我將重點介紹具體移動菜單突出顯示的主要區別。
在我們資產凈值有三個主要元素,標志,漢堡菜單,主菜單,從一標準無序列表創建。
lt;資產凈值ID = #39;flexmenurdquo;gt;<div等級=ldquo標志;燃氣輪機;書信電報;a href=rdquo;ldquo;燃氣輪機;書信電報;h1gt;樣式lt/h1gt;lt/agt公司;lt;/()div)燃氣輪機;lt;divID=ldquo;移動電話肘rdquo;class=ldquo按鈕;燃氣輪機;lt;/()div)gt;<ULID=ldquo;主菜單;燃氣輪機;lt;李gt;hellip; lt;/()李gt); lt;UL子菜單; 燃氣輪機;lt;李gt;hellip; lt;/()李gt); lt;/()UL)燃氣輪機;lt;李gt;hellip; lt;/()李gt);hellip; Lt;/()UL)燃氣輪機;lt/導航gt;
當移動菜單打開時,這是我們想要向下移動的內容容器。與其他菜單一樣,這要求我們至少添加一個相對位置:
#主高度:100vh;wIDth:100vw;位置:相對;}
1.5升;移動電話toggle
本演示中的toggle是主menu結構的一個單獨的div輸出IDe。我們coULd的方法與前面的示例相同,但menu是由WorDP等系統生成的;不允許這樣,所以在標記中給它自己的元素更容易處理。
當樣式切換時,繼續在腦海中建議觸摸大小,并給它一個高Z指數,以確保它永遠不會被重疊的內容所掩蓋。要使開關保持在原位,還需要絕對位置。因為我們的菜單將從切換展開,而不是從畫布展開,所以我們可以在這里使用正常值。
. 按鈕{背景:#751cec);寬度:60px高度:48px;位置:絕對;右:0;頂部:0
switch本身的創建方式與我們的** 終switch偽元素類似,因此稍后很容易轉換為x2ndash;菜單
我們不需要對菜單移動狀態的樣式做太多的處理,除了造成水平菜單重置模式的問題。大部分工作應在進入現場時完成。您可以隨時強制所有子菜單將展開為默認值,但這可能導致長菜單滾動;武力本身的問題。** 好把它們變成手風琴,然后把它們當作水龍頭展開。比較原始規則和移動規則:
#flexmenuULUL{位置:絕對;左::9999px;}}flexmenuULULUL{margin-左:100%;上:0;}@媒體屏幕(** 大寬度:768px){flexmenuULUL, ;左:0;寬度:100%
在我們子菜單的風格,絕對位置“下降;它的父鏈接和負值用于在螺旋旋轉時創建隨機播放效果。第三級菜單被推到其父邊寬度的100%,因此它會向右彈出。我們重新設計了手機,我們可以得到它的父親。我們不需要定位技能,因為我們不流浪3ndash;媒體查詢和單擊事件
您已經看到了媒體查詢的移動菜單的樣式和重置,所以我將跳過jQuery。
在這里,我們使用jQuery做兩件事:檢測click AddCSS類并檢查屏幕大小,以確定是否刪除該類,頁面加載之間是否有變化。
當元素的按鈕處于shift時,一個菜單打開add類。如果再次單擊,則類將被刪除。
$(這個)找到了( ) 39; 按鈕),(聽到一聲咔嗒聲,函數(){$(這里)toggle類(#39;menu-opened #39;); Var mainmenu=美元(本)。下一個(#39UL#39;)If(主菜單)has類(lsquo;){主菜單slidetoggle()remove類(打開);
這還添加了一個open類作為影響子元素,該子元素僅用于查詢,但如果需要,可以使用CSS。
在這里,我們找到的所有實例后面都跟有UL,顯示子菜單的存在,并添加一個有孩子的類子菜單UL。所有的項目都有一個子類,得到一個下拉開關和類子菜單按鈕,這是我們的風格,和類按鈕;媒體查詢。單擊子菜單按鈕時,將打開一個類子菜單,打開的類是一個動畫添加和刪除slidetogglejQuery。
這創造了什么手風琴的基本解剖,以及我們如何以** 有效的方式管理這些元素的形狀,而不是寫不必要的CSS選擇器或每噸單個點擊事件。
flexmenu.已找到(李UL)parent()add類(#39;has-sub #39;);subtoggle =函數({flexmenu.找到(#39;);。是子rdquo;)。在;書信電報;Span class=quo子菜單按鈕”和;燃氣輪機;lt/跨度gt;(二)flexmenu)。找到(#39;。rdquo;子菜單按鈕),(聽到一聲咔嗒聲,函數(){$(這里)toggle類(#39;submenu-opened #39;); 如果($(這個),兄弟姐妹( 39ULrdquo;)。has等級(lsquo;){$(這是兄弟姐妹(#39ULrdquo;((開)slidetoggle();}{美元其他人(這里),兄弟姐妹( 39ULrdquo;)。add公開課slidetoggle()
** 后,讓我們添加一個調整補丁。這只是讓事情發生,我們需要他們,如果瀏覽器調整的方式,活動和查詢移動視圖依賴關系沒有正確觸發。
resizefix=函數(){varmediasize=768;如果($(窗口)。wIDth()gt;mediasize{flexmenu.Discovery(#39ULrdquo;)show();}If($(窗口)。wIDth()lt;=()mediasize)){flexmenu找到(#39UL.rdquo;)。hide()remove類(開放);}}resizefix();返回$;
4-行為
菜單的** 后一部分包括變換切換和向下滑動菜單。
首先,我們將使用此菜單打開。類通過單擊開關jQuery添加到我們的按鈕,以將一些樣式更改和轉換添加到旋轉桿到X:
. 按鈕。菜單打開:轉換后{:全部s釋放;頂部:23px;邊框:0高度:2px;寬度:19px;背景:fff;變換:旋轉(45度);}按鈕。菜單打開:在{頂部:23px;背景:
這一轉變有助于使國家間的變革順利進行。在這里,您可以了解有關轉換的更多信息。
事情就是這樣!菜單是塊元素,因此它自然地向下推動內容容器。結論
只要你掌握了使用手機導航的基本知識,你的響應菜單-確保鏈接和切換響應點擊,足夠大,足夠簡單,并在大多數移動設備和瀏覽器中轉換工作,你應該不會有很多問題。
反應是一門特殊的藝術,它需要對用戶行為CSS單元和總體設計進行大量的理解和研究,但要理解如何使用菜單和工具來幫助您以您** 想要的方式構建自己的實現,并為您的項目提供** 佳效果。下面是一些資源用于實現這一點的技術的更多細節,您可以在這里找到更好的示例。
- 如何優化:
- 網站url改版不收錄 網站建設哪個 奉賢網站改版哪家好 公司網站改版價格會變嗎 網站改版注意哪些 陽江網站開發 孝義網站定制公司 日本跨境選品軟件網站開發 本溪網站定制報價 鄭州旅游網站開發運營