Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
、頁面內(nèi)跳轉(zhuǎn)的錨點設(shè)置
頁面內(nèi)的跳轉(zhuǎn)需要兩步:
方法一:
①:設(shè)置一個錨點鏈接<a href="#miao">去找喵星人</a>;(注意:href屬性的屬性值最前面要加#)
②:在頁面中需要的位置設(shè)置錨點<a name="miao"></a>;(注意:a標(biāo)簽中要寫一個name屬性,屬性值要與①中的href的屬性值一樣,不加#)標(biāo)簽中按需填寫必要的文字,一般不寫內(nèi)容
方法二:
①:同方法一的①
②:設(shè)置錨點的位置 <h3 id="miao">喵星人基地</h3>;在要跳轉(zhuǎn)到的位置的標(biāo)簽中添加一個id屬性,屬性值與①中href的屬性值一樣,不加#
方法二不用單獨添加一個a標(biāo)簽來專門設(shè)置錨點 ,只在需要的位置的標(biāo)簽中添加一個id即可。
小案例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>萌寵集結(jié)號</title>
</head>
<body>
<ul>
<li><a href="#miao">去找喵星人</a></li>
<li><a href="#wang">去找汪星人</a></li>
<li><a href="#meng">其他萌物</a></li>
</ul>
<a name="miao"></a><!--設(shè)置錨點方法1-->
<h3 id="miao">喵星人基地</h3><!--設(shè)置錨點方法2-->
<p>喵喵喵~</p>
<p>喵喵喵~</p>
<p>喵喵喵~</p>
<p>喵喵喵~</p>
<p>喵喵喵~</p>
<p>喵喵喵~</p>
<a name="wang"></a>
<p>汪汪汪~</p>
<p>汪汪汪~</p>
<p>汪汪汪~</p>
<p>汪汪汪~</p>
<p>汪汪汪~</p>
<p>汪汪汪~</p>
<a name="meng"></a>
<p>萌萌萌~</p>
<p>萌萌萌~</p>
<p>萌萌萌~</p>
<p>萌萌萌~</p>
<p>萌萌萌~</p>
<p>萌萌萌~</p>
</body>
</html>
二、跨頁面跳轉(zhuǎn)
①:設(shè)置錨點鏈接,在href中的路徑后面追加:#+錨點名,即可
如:<a href="萌寵集結(jié)號.html#miao">跳轉(zhuǎn)到萌寵集結(jié)號頁面</a>
②:要跳轉(zhuǎn)到的頁面中要設(shè)置錨點,方法見一種的步驟②,兩個方法任選其一。
起html的錨點這個概念,你可能會感到會陌生,感覺自己沒有聽過。但是如果說起它的作用,你可能就恍然大悟了,就像你說起一個演員,可能不知道是誰,但是說起它演的一個角色可能立馬就知道那個人是誰了。
那么,什么是錨點呢?
錨點存在于html中,在默認(rèn)情況下,可以快速的定位到指定元素,并將元素置于頁面最頂端。當(dāng)然我們可以按照自己的需求來確定錨點的位置,不一定要讓其定位在頂部。現(xiàn)如今有無數(shù)多的頁面已經(jīng)用上了錨點,比如Vue.js的官網(wǎng),在我們點擊標(biāo)題“Vue.js是什么”和標(biāo)題“起步”的時候,標(biāo)題都會自動移到頁面頂端。
錨點的使用
那接下來,我們就來看看幾種錨點的使用方法。
id定位
最基本的使用方法如下,當(dāng)點擊<a>標(biāo)簽時,頁面會相應(yīng)的將該div內(nèi)容置頂
錨點的id定位方法
name定位
除了id,還可以通過name進(jìn)行定位,不過需要主要的是,如果采用name屬性進(jìn)行定位的話,只適用于a標(biāo)簽,類似于p標(biāo)簽等都不支持。
錨點的name定位方法
javascript代碼進(jìn)行定位
在原生的javascript中,有一個scrollIntoView()方法,可以實現(xiàn)頁面的錨點
javascript方法實現(xiàn)錨點
一個綜合的例子
講了三種實現(xiàn)方法后,接下來看一個實際運用的例子。首先是實際效果圖,在點擊左側(cè)欄時,頁面右邊會相應(yīng)的顯示指定段落的內(nèi)容
錨點的實際使用
首先看下html頁面的內(nèi)容,左側(cè)的ul代碼
左側(cè)的ul代碼
右側(cè)的內(nèi)容部分代碼
右側(cè)內(nèi)容部分代碼
css部分的代碼
css部分的代碼
將上述的代碼寫在一個html文件中,便可實現(xiàn)左側(cè)欄點擊,右側(cè)欄顯示相應(yīng)內(nèi)容的效果。
特殊情況
在實際項目中,我們總會遇到這樣一種情況,在頁面頂部有固定頭內(nèi)容的時候,如果直接使用上述方法,會得不到想要的效果
直接使用錨點的效果圖
通過該圖可以看出,第三段內(nèi)容的標(biāo)題被遮住了,實際應(yīng)該往下再顯示一點
那么,我們該怎么解決這個問題呢?在這里我想到了兩種方法,第一種是在每個內(nèi)容div上加一個隱藏的p元素,給p元素一個定高,再向上偏移,這種方法會導(dǎo)致頁面出現(xiàn)很多個多余的p元素,不推薦使用。
第二種是利用偽元素,偽元素可以占用實際的高度,這是推薦使用的方法
偽元素的樣式
通過給h3標(biāo)簽添加偽元素樣式,可完美解決這個問題,效果圖如下
使用偽元素后的效果圖
總結(jié)
今天的內(nèi)容你會了么?如果還沒有掌握的話,可以按照文章中的代碼,進(jìn)行實踐,代碼總是要多敲才更容易理解。
如果喜歡的話,記得關(guān)注小編噢,小編后續(xù)會堅持出更多技術(shù)性的文章,如果有任何問題,也歡迎提問,小編都會盡力解答的。
輯導(dǎo)語:在上下滾動頁面時,除了出現(xiàn)吸頂,還會出現(xiàn)吸底、錨點等情況,那么這些都是在滾動頁面時需要注意的控件。本文作者結(jié)合最近工作中的實際項目,對于滑動時的吸頂、錨點規(guī)則方式的總結(jié)心得,一起來學(xué)習(xí)下吧。
上下滾動頁面時,除了出現(xiàn)吸頂,還會出現(xiàn)吸底、錨點等情況,這些都是在滾動頁面時需要注意的控件。
結(jié)合最近工作中的實際項目,Cassie將滑動用到的場景進(jìn)行了提煉,總結(jié)出這份控件設(shè)計規(guī)范,一起來學(xué)習(xí)吸底、錨點是如何在APP以及PC端應(yīng)用的吧~
PC端及移動端的底部有一些操作欄,比如表單的填寫操作或者支付按鈕的放置,移動端底部還會有全局的導(dǎo)航欄,這些會占用一定的空間,可以根據(jù)使用場景靈活選擇吸底方式。
需要注意吸底的是具有操作價值的內(nèi)容,吸底元素包括操作按鈕、 引導(dǎo)操作、移動端的導(dǎo)航欄…
PC端在表單內(nèi)容較多、查看內(nèi)容文章、需要引導(dǎo)用戶操作比如支付等場景下,當(dāng)用戶需滑動查看更多內(nèi)容,可將操作類按鈕吸底,需要吸底的內(nèi)容可以根據(jù)布局調(diào)整顯示。
在左圖PC端釘釘郵箱中,屬于編輯表單類的,將發(fā)送操作按鈕固定吸底,用戶只需要修改部分字段,更利于快速完成編輯;在PC端簡書中,屬于內(nèi)容展示類的,出于增強互動的目的,將評論、點贊等操作固定在底部增加其操作便捷性。
考試星PC端采用左中右布局,將提交考試放在右側(cè)底部,可以不占用考試內(nèi)容高度空間;百度學(xué)術(shù)PC端采用左右布局,右側(cè)是一些介紹內(nèi)容,所以操作按鈕固定在和之有直接關(guān)系的左側(cè)內(nèi)容底部。
移動端底部常會有一些吸底的控件,比如底部導(dǎo)航欄、主操作按鈕、需要引導(dǎo)或便捷用戶操作的控件等。
一級頁面導(dǎo)航固定在底部,當(dāng)該頁面有主按鈕,比如結(jié)算等則將該欄放到導(dǎo)航欄上面,如果還有引導(dǎo)類或便捷操作類控件則再放到主操作欄上面。
移動端,特別是購物車場景存在多條吸底內(nèi)容。
具有引導(dǎo)性的操作,為了配合主操作而出現(xiàn),也是固定在底部,但位于底部操作上面,在特定場景下出現(xiàn)。
比如閑魚提供了一些常用問題,可以跟賣家交流更便捷;考拉海購購物車的優(yōu)惠引導(dǎo)也是固定在底部,類似的還有京東、淘寶等購物車。
當(dāng)PC端展示內(nèi)容分多段,且其中有需要引導(dǎo)用戶操作的按鈕,建議在滾動到該段時將該操作按鈕吸底,滾動到另外一段內(nèi)容后再取消吸底。
考拉海購PC端的購物車頁面,如果購物車內(nèi)容比較多,支付欄是吸底的,向上滾動到購物車商品內(nèi)容結(jié)束后,支付欄不吸底,下面展示推薦商品。
京東官網(wǎng)的購物車也是這種方式,但移動端主流購物車的支付都是固定在底部的。
吸底內(nèi)容可以根據(jù)具體情況顯示或隱藏,這種非固定的方式常用于移動端閱讀及查看話題評論時。
在微信讀書的閱讀狀態(tài)時,為了給讀者提供沉浸式體驗,隱藏操作欄,上滑時再顯示;在知乎熱榜瀏覽主題內(nèi)容時,主操作欄跟在內(nèi)容下面,當(dāng)頁面滑動后主操作欄改變布局樣式吸底展示。
錨點以回到頂部也屬于頁面滾動時需要的控件,配合滾動條用于跳轉(zhuǎn)到頁面指定位置。
PC端和移動端都可以在內(nèi)容過多時使用回到頂部控件,PC端的錨點定位類似導(dǎo)航一樣可以放到頁面左側(cè)或者右側(cè),但其實只是頁面的內(nèi)容定位。
移動端可以利用滾動條做時間軸類型的定位或者分頁定位。
當(dāng)PC端頁面內(nèi)容區(qū)域比較長時比如瀑布流的使用,用戶需要頻繁返回頂部查看相關(guān)內(nèi)容時,可以滾動后出現(xiàn)回到頂部控件。
花瓣P(guān)C端頁面滾動后,右下角有一些功能操作,滾動后出現(xiàn)回到頂部控件。
當(dāng)頁面內(nèi)容區(qū)域比較長時;當(dāng)用戶需要頻繁返回頂部查看相關(guān)內(nèi)容時,可以使用回到頂端返回頁面頂部。
如果當(dāng)前頁面是主頁,可以滾動后主頁按鈕便成回到頂部按鈕,這樣可以避免遮擋內(nèi)容,優(yōu)化閱讀體驗。
京東購物車頁面除了展示添加到購物車的商品外,底部還有推薦上面,滾動后出現(xiàn)回到頂部控件;每日優(yōu)鮮APP頁面滾動后,導(dǎo)航的主頁按鈕變成回到頂部按鈕,優(yōu)化體驗,類似的還有淘寶、餓了么、考拉等主頁有瀑布流的內(nèi)容。
當(dāng)PC端有多條組合內(nèi)容時,可以左側(cè)做一個錨點定位配合滾動條快速定位到頁面需要查看的內(nèi)容。
當(dāng)PC端使用上下布局時,且內(nèi)容區(qū)域居中固定時,錨點懸浮在左側(cè)顯示,當(dāng)屏幕小于一定尺寸時,錨點縮小懸浮于頁面左側(cè),鼠標(biāo)移入時再顯示。
在優(yōu)設(shè)的網(wǎng)址導(dǎo)航中,由于導(dǎo)航分為多個類型,所以將具體類型名稱放到左側(cè)展示,能快速定位到需要的內(nèi)容。
當(dāng)PC端左側(cè)有導(dǎo)航,錨點定位可以放到右側(cè),常用于閱讀文章等場景。
在Ant design的組件頁,由于左側(cè)有二級導(dǎo)航,所以將頁面的錨點定位放在右側(cè),類似的還有語雀文章閱讀。
當(dāng)有時間類型的內(nèi)容比如瀏覽照片時,可以采取時間軸定位的方式快速滑動到需要查看的內(nèi)容。
內(nèi)容過多的情況下也可以采取分頁的形式,滾動后將分頁及回到頂部固定在底部右下角位置。
例如寶寶樹APP采用時間軸的方式快速定位,默認(rèn)狀態(tài)定位控件縮小固定在右側(cè),滑動時控件變大顯示具體時間,方便用戶按時間快速查找照片,類似的還有百度網(wǎng)盤里的照片瀏覽。
豆瓣APP在電影的討論模塊,選擇一個討論查看詳情滾動后底部顯示回復(fù)的定位錨點,控件放在操作欄上面吸底展示。
作者: Cassie
原文鏈接:www.zcool.com.cn/article/ZMTM0ODkzMg==.html
本文由 @ Cassie 授權(quán)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于CC0協(xié)議。
*請認(rèn)真填寫需求信息,我們會在24小時內(nèi)與您取得聯(lián)系。