自適應單頁源碼(自適應單頁源碼怎么設置)
今天給各位分享自適應單頁源碼的知識,其中也會對自適應單頁源碼怎么設置進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關注本站,現(xiàn)在開始吧!
本文目錄一覽:
- 1、單頁式網(wǎng)站的有什么優(yōu)點?
- 2、iframe內嵌怎么自適應
- 3、寫個CSS html 上傳文件簡單頁面 自適應移動端?
- 4、vue自適應pc端界面
- 5、自適應個人主頁html源碼,哪里下載?
單頁式網(wǎng)站的有什么優(yōu)點?
單頁式網(wǎng)站優(yōu)點:
一、著陸頁更清爽
著陸頁頁面清爽是單頁式網(wǎng)站最大的特點,它不會有各種各樣的彈窗和各種各樣的跳轉,相比起多頁式網(wǎng)站,按鈕也會少很多。
當用戶瀏覽過單頁式網(wǎng)站之后,再瀏覽多頁式網(wǎng)站或者是有彈窗的網(wǎng)站,會感覺到不適應。
二、操作更便捷
單頁式網(wǎng)站在頁面極簡的情況下,單頁式網(wǎng)站的操作也變得更加便捷,只要下滑和點擊就好。尤其是下滑的操作體驗,不需要頁面跳轉,想回去看上一個畫面也不需要重新加載,只要滑回去就好了。
三、更利于移動端瀏覽
單頁式網(wǎng)站對移動端的友好程度,直接體現(xiàn)在移動端瀏覽上。用手指就能完成滑動操作,想看那里滑到哪里,想回看就回看,想下滑就下滑真的不能更方便了。省去了頁面跳轉和重新加載的步驟,網(wǎng)站瀏覽的完成度會變得非常高。畢竟在著陸頁上,多一次點擊跳轉的操作,會流失當前30%的用戶,這個數(shù)據(jù),只有單頁式能夠縮小到5%~15%。
四、源代碼更優(yōu)美
作為一個IT從業(yè)者,在看網(wǎng)站的時候都會習慣性地去看看源代碼,如果一個網(wǎng)站的源代碼比較優(yōu)美整齊,單頁式網(wǎng)站的源代碼因為元素不多,所以源代碼跟頁面一樣清爽,可以說是優(yōu)美得內外兼修了。
五、上線更迅速
一個網(wǎng)站,在備案期間,是不能直接訪問的,而多頁面網(wǎng)站需要不斷調試和修復Bug,而單頁式網(wǎng)站制作好之后就可以直接發(fā)布了,因為元素少頁面簡潔Bug也更少更好修補。
六、收錄更迅速
雖然說單頁式網(wǎng)站的SEO相對比較麻煩,但是也不是不能做,今天我們只聊單頁式的優(yōu)點。收錄迅速也是單頁式的優(yōu)點之一,當然,資深從業(yè)者都知道,收錄不代表排名,排名需要SEO優(yōu)化,但收錄,只需要引擎的抓取。單頁式網(wǎng)站被搜索引擎抓取,會比多頁式快。
七、更酷的互動方式
因為單頁式網(wǎng)站,是可以直接添加表單的,表單的形式也非常簡單,用戶填寫自己的姓名、聯(lián)系方式和留言后,網(wǎng)站后臺會收到這條留言,并且可以直接一對一地跟客戶進行溝通和聯(lián)系!
八、改版更方便
與多頁式的改版相比,單頁式的改版實在太簡單了。如果是用建站平臺做的單頁式網(wǎng)站,直接模板替換圖片更換色彩調整、文案變更就搞定了一次改版。如果說多頁式的改版會讓攻城獅感覺內心顫抖,那么單頁式的改版不僅不會讓攻城獅感覺痛苦甚至會有點輕松想笑。
九、自適應更流暢
在移動端流量成為巨頭的今天,如果還只做PC端網(wǎng)頁,那就太失敗了。SEO都進化到優(yōu)化app和微信搜索了,網(wǎng)站的建設再不考慮到移動端的自適應就真的太落后了。在當下,一個好的網(wǎng)站,需要PC端好看,手機端好看,pad端也要好看,如果一端一個網(wǎng)站版本,工作量巨大,還不一定能做到內容風格的統(tǒng)一,不如自適應。而單頁式網(wǎng)站,仿佛天生為自適應而生,做好一個單頁式,任何尺寸的屏幕打開都會很好看。
十、用戶留存率和瀏覽完成度更高
單頁式網(wǎng)站最棒的一點,也是它能成為網(wǎng)站圈后起之秀的主要原因,是因為它的用戶留存率非常高。首先是從瀏覽用戶留存來說,有關統(tǒng)計顯示,多頁式網(wǎng)站每一次點擊跳轉就會流失當前30%的用戶,單頁式網(wǎng)站首先就規(guī)避掉了這個風險。其次是從網(wǎng)頁瀏覽完成度來說,單頁式網(wǎng)站一拉到底的瀏覽方式,也比多頁式跳轉、加載的瀏覽方式更高哦。單頁式網(wǎng)站,用戶很容易瀏覽完整個網(wǎng)站,但多頁式,一個個頁面加載,用戶的耐心也就在一次次跳轉中逐漸消失了。
iframe內嵌怎么自適應
什么是自適應高度吧。所謂iframe自適應高度,就是,基于界面美觀和交互的考慮,隱藏了iframe的border和scrollbar,讓人看不出它是個iframe。如果iframe始終調用同一個固定高度的頁面,我們直接寫死iframe高度就可以了。而如果iframe要切換頁面,或者被包含頁面要做DOM動態(tài)操作,這時候,就需要程序去同步iframe高度和被包含頁的實際高度了。
順便說下,iframe在迫不得已的時候才去用,它會給前端開發(fā)帶來太多的麻煩。
傳統(tǒng)做法大致有兩個:
方法一,在每個被包含頁在本身內容加載完畢之后,執(zhí)行JS取得本頁面的高度,然后去同步父頁面的iframe高度。
方法二,在主頁面iframe的onload事件中執(zhí)行JS,去取得被包含頁的高度內容,然后去同步高度。
在代碼維護角度考慮,方法二是優(yōu)于方法一的,因為方法一,每個被包含頁都要去引入一段相同的代碼來做這個事情,創(chuàng)建了好多副本。
如果只考慮FX和IE,并且,iframe里面內容也不進行DOM操作,那仍然可以用最簡單最方便的傳統(tǒng)處理方式:
iframe id="frame_content" src="iframe_b.html" scrolling="no" frameborder="0" onload="this.height=this.contentWindow.document.documentElement.scrollHeight"/iframe
兩個方法都只處理了靜的東西,就是只在內容加載的時候執(zhí)行,如果JS去操作DOM引起的高度變化,都不太方便。
如果在主窗口做一個Interval,不停的來獲取被包含頁的高度,然后做同步,是不是即方便,又解決了JS操作DOM的問題了呢?答案是肯定的。
Demo頁面:主頁面 iframe_a.html ,被包含頁面 iframe_b.htm 和 iframe_c.html
主頁面代碼示例:
iframe id="frame_content" src="iframe_b.html" scrolling="no" frameborder="0"/iframescript type="text/javascript"
function reinitIframe(){
var iframe = document.getElementById("frame_content");
try{
iframe.height = iframe.contentWindow.document.documentElement.scrollHeight;
}catch (ex){}
}
window.setInterval("reinitIframe()", 200);
/script
一直執(zhí)行,效率會不會有問題?
我做了測試,同時開5個窗口(IE6、IE7、FF、Opera、Safari)執(zhí)行這個代碼,不會對CPU有什么影響,甚至調整到2ms,也沒影響(基本維持在0%占用率)。
下面談談各瀏覽器的兼容性問題,如何獲取到正確的高度,主要是對body.scrollHeight和documentElement.scrollHeight兩個值得比較。注意本文用的是這個doctype,不同的doctype應該不會影響結果,但是假如你的頁面沒有申明doctype,那還是先去加一個吧。
!DOCTYPE HTML PUBLIC "
在主頁面追加以下測試代碼,以輸出這兩個值,代碼示例:
divbutton onclick="checkHeight()"Check Height/button/divscript type="text/javascript"
function checkHeight() {
var iframe = document.getElementById("frame_content");
var bHeight = iframe.contentWindow.document.body.scrollHeight;
var dHeight = iframe.contentWindow.document.documentElement.scrollHeight;
alert("bHeight:" + bHeight + ", dHeight:" + dHeight);
}
/script
被加載頁面,可以切換一個絕對定位的層,來使頁面高度動態(tài)改變。如果層展開,則會撐高頁面高度。代碼示例:
divbutton onclick="toggleOverlay()"Toggle Overlay/button
/div
div style="height:160px;position:relative"
div id="overlay" style="position:absolute;width:280px;height:280px;display:none;"/div
/div
script type="text/javascript"
function toggleOverlay() {
var overlay = document.getElementById('overlay');
overlay.style.display = (overlay.style.display == 'none') ? 'block' : 'none';
}
/script
下面列出以上代碼在各瀏覽器的測試值:
(bHeight = body.scrollHeight, dHeight = documentElement.scrollHeight, 紅色 = 錯誤值, 綠色 = 正確值)
/
層隱藏時
層展開時
bHeight
dHeight
bHeight
dHeight
IE6 184 184 184 303
IE7 184 184 184 303
FF 184 184 184 303
Opera 181 181 300 300
Safari 184 184 303 184
暫且無視Opera比別人少3像素的問題…可以看出,如果沒有絕對定位的東西,兩個值是相等的,取哪個都無所謂。
但是如果有,那么各個瀏覽器的表現(xiàn)不太相同,單取哪個值都不對。但可以找到了一條規(guī)律,那就是取兩個值得最大值可以兼容各瀏覽器。所以我們的主頁面代碼就要改造成這樣了:
function reinitIframe(){var iframe = document.getElementById("frame_content");
try{
var bHeight = iframe.contentWindow.document.body.scrollHeight;
var dHeight = iframe.contentWindow.document.documentElement.scrollHeight;
var height = Math.max(bHeight, dHeight);
iframe.height = height;
}catch (ex){}
}
window.setInterval("reinitIframe()", 200);
這樣子,基本解決了兼容性問題。順便說下,不光絕對定位的層會影響到值,float也會導致兩個值的差異。
如果你演示Demo后,會發(fā)現(xiàn),除了IE,其他瀏覽器中,當層展開后再隱藏,取到的高度值還是維持在展開的高度303,而非隱藏回去的真正值184,就是說長高了之后縮不回去了。這個現(xiàn)象在不同被包含頁面之間做切換也會發(fā)生,當從高的頁面切換到矮頁面的時候,取到的高度還是那個高的值。
可以歸納為,當iframe窗體高度高于文檔實際高度的時候,高度取的是窗體高度,而當窗體高度低于實際文檔高度時,取的是文檔實際高度。因此,要想辦法在同步高度之前把高度設置到一個比實際文檔低的值。所以,在iframe的添加 onload=”this.height=100″,讓頁面加載的時候先縮到足夠矮,然后再同步到一樣的高度。
這個值,在實際應用中決定,足夠矮但又不能太矮,否則在FF等瀏覽器里會有很明顯的閃爍。DOM操作的時候主頁面無法監(jiān)聽到,只能DOM操作完了之后把高度變小了。
在我的一個實際項目中,在成本和收益之間權衡,我并沒有做這個事情,因為每個DOM函數(shù)中都要插入這個代碼,代價太高,其實層縮回去不縮掉也不是那么致命。包括Demo里,也沒有去做這個事情。如果讀者有更好的方法,請告訴我。
這是最終的主頁面的代碼:
iframe id="frame_content" src="iframe_b.html" scrolling="no" frameborder="0" onload="this.height=100"/iframe
script type="text/javascript"
function reinitIframe(){
var iframe = document.getElementById("frame_content");
try{
var bHeight = iframe.contentWindow.document.body.scrollHeight;
var dHeight = iframe.contentWindow.document.documentElement.scrollHeight;
var height = Math.max(bHeight, dHeight);
iframe.height = height;
}catch (ex){}
}
window.setInterval("reinitIframe()", 200);
/script
附Demo頁面: 主頁面 iframe_a.html ,被包含頁面 iframe_b.htm 和 iframe_c.html
寫個CSS html 上傳文件簡單頁面 自適應移動端?
你是想寫一個頁面 選擇文件和上傳按鈕都在頁面中間顯示嗎 這個只需要做到上下左右劇中就可以了,中間兩個按鈕可以彈性布局
vue自適應pc端界面
頁面高度自適應element-ui框架:應用于vue后臺管理系統(tǒng),大屏,整理源碼如下:
自適應個人主頁html源碼,哪里下載?
個人主頁可以采用html代碼也可以采用cms系統(tǒng)形式,一般以個人博客網(wǎng)站形式存在。你可以在個人博客模板找到自適應的模板程序后,進行源碼下載。
每天的進行一些文章更新,相信對于建立個人品牌是非常有幫助的。
自適應單頁源碼的介紹就聊到這里吧,感謝你花時間閱讀本站內容,更多關于自適應單頁源碼怎么設置、自適應單頁源碼的信息別忘了在本站進行查找喔。
掃描二維碼推送至手機訪問。
版權聲明:本文由飛速云SEO網(wǎng)絡優(yōu)化推廣發(fā)布,如需轉載請注明出處。