Ⅰ 前端開發人員應考慮哪些SEO優化技巧
前端開發人員需要具備哪些SEO優化技巧
前端開發工程師不僅需要要跟視覺設計師、互動式設計師配合,完美還原設計圖稿,編寫兼容各大瀏覽器、載入速度快、用戶體驗好的頁面。現在還需要跟SEO人員配合,調整頁面的代碼結構和標簽。一些成熟的平台,在開發初期並沒有考慮優化問題,所以做出來的頁面,就算是效果很炫,功能很強,但是對搜索引擎非常的不友善。任何一個成熟的網站,後期頁面都是動輒幾百萬的,到這個時候再來調整結構,既費時又費力,最怕的還是會影響到排名和收錄。
所以說與其在後期碰到問題再來調整,還不如把問題解決在源頭。我本人也是從事前端開發工作的,下面把我工作過程中,積累的幾個開發過程中就需要做好的SEO優化技巧,分享給大家。
1、簡化代碼結構,更利於搜索引擎分析抓取有用內容:頁面盡量採用DIV+CSS,當然,表格展現模式用table還是比div方便很多的;所有js、css採用外聯方式,圖片採用css精靈,減少請求次數。看下下面同樣的內容,用div和talbe布局的代碼比較,顯而易見用div簡便的多。
2、重要內容優先載入(第一個鏈接最好是網站主關鍵詞,不刻意要求),可以用css來處理,索引一篇文章的長度也是有限制的,一定要把最重要的內容,優先展現給蜘蛛,這方面你可以通過查看一些比較大的網頁快照來求證。
3、每個頁面只能出現一次H1標簽,H2標簽可以多次:H1權重很高,普遍認為僅次於title,一般資訊詳情頁的標題、商品詳情頁的標題,都放在H1里。
4、圖片一定要添加alt屬性,title屬性可選:蜘蛛不認識圖片上的內容,只能通過alt屬性來判斷,如果是商品列表頁,所有商品都加了alt和title的話,容易造成堆砌關鍵詞,所以我一般是只加alt屬性。
5、圖片大小聲明:如果圖片大小不做定義的話,頁面需要重新渲染,就會影響到載入速度。
6、鏈接可根據需求添加title屬性以及nofllow值;非特殊性鏈接,鏈接地址一定要寫入herf屬性,有些前端開發人員為了省事,直接用div加個click事件當鏈接,在視覺上和使用上確實是實現了鏈接效果,但是做過SEO優化的人
員都知道,蜘蛛目前對於js的支持很差,基本無法讀取裡面的鏈接地址。所以說用click事件是絕對不允許的,特別是一些重要的導航鏈接。
7、頁面內容盡量不要做成flash、圖片、視頻,這些東西蜘蛛是抓不到的,就算是必須的,也要生成相應的靜態頁面。有很多企業站看著很炫,全站flash,老闆看著是爽了,做SEO優化的人員就要抓狂了,全站沒一個鏈接。
8、除首頁外別的頁面最好要加上麵包屑型導航,導航結構一定要清晰。
9、做好404頁面,一般會加首頁鏈接及錯誤提示,並測試其返回狀態碼為404:1、用戶體驗友好,可以留住用戶,不至於直接關閉頁面;2、蜘蛛友好,可以返回抓取其他頁面。
10、網站結構呈扁平狀樹型,目錄結構不宜過深,每個頁面離首頁最多點擊不超過3次,過深不利於搜索引擎的抓取。
Ⅱ 前端規范,HTML的<head>標簽內<meta>lt;title>等標簽順序是怎樣的
<!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/>
<title>無標題文檔</title>
</head>
<body>
</body>
</html>
這個簡單,你直接創建個html文檔,會顯示最標準的頭部文檔。
Ⅲ web前端開發的css應該怎樣寫
新建一個.css的文檔,此方法需要在html的文檔中調用css文檔
調用css文檔用html中<link>標簽來調用
css文檔內容如下:
#divid{
height:20px;
width:15px;
..........
}
.divclass{
內容如上舉例
}
或者在html里嵌套,如下:
在html的<body></body>標簽前在title標簽後,用style標簽如:
<style>
#divid{
內容同上舉例
}
.divclass{
內容如上舉例
}
</style>
Ⅳ 如何將前端開發技術用<h1>標簽設置為紫色標題
<style>
h1{
color:purple;
}
</style>
<h1>使用最基本的選擇器即可啊</h1>
在前端開發當中,將h1標簽的內容設置為紫色,只需要使用最基礎的CSS選擇器就可以了啊
(上圖為該段代碼的顯示效果)
Ⅳ 前端,請問下面這個公式,為什麼我給bTitle下面的a標簽賦值,為什麼span標簽也被賦值了呢
你要提供更多的信息,比如你是怎麼賦值的,你要賦的是屬性的值還是內容的值。
如果你要給a標簽的屬性賦值的話:
document.getElementsByClassName("bTitle")[0].getElementsByTagName("a")[0].setAttribute("屬性名","屬性值");
如果你要給a標簽內容賦值的話:
document.getElementsByClassName("bTitle")[0].getElementsByTagName("a")[0].innerHTML("內容")
Ⅵ Web前端開發中要注意哪些SEO細節
1、網站布局要做到樣式與頁面分離,刪除頁面中不必要的標簽和元素。
2、頁面生成要盡量小,要壓縮頁面的大小,頁面盡量使用靜態或偽靜態。
3、所有的CSS、JS都要使用外部調用。
4、外部調用的JS文件的代碼能放在底部的盡量放在底部,頁面調用的css文件的代碼盡量都放在head內,同一頁面盡量不要超過3個JS外部調用。
5、每個頁要只能出現一次H1標簽,H2~H6標簽可以多次,這樣做是為了加重H1標簽的權重。
6、除首頁外別的頁面要加麵包屑型路徑,導航一定要清晰。
7、網站一定要兼容腦殘的IE各版本和FF等主流瀏覽器,這個雖然感覺對SEO影響不大,但是作為前端,這也是最基本的吧。
8、圖片一定要添加alt屬性,鏈接一定要添加title屬性。
9、網站結構呈扁平狀樹型,目錄結構不宜過深,每個頁面離首頁最多點擊3次,過深不利於搜索引擎的抓取。
10、做好404頁面,並測試其返回狀態碼為404。
11、確保網站代碼無誤,HTML能通過W3C版本。
Ⅶ 前端設計為什麼要進行標簽語義化
打個比方,今日頭條里的新聞都是從各大新聞媒體的網站中搜集新聞(如新浪網,光明網等),頭條就需要處理大量的來自不同網站的新聞頁面,細看每個新聞頁面,需要挑出頁面里的正文內容,作者的名字還有發稿的時間等等。這時候包裹這些重要信息的標簽就起到了重要的作用——幫助識別標簽里的內容。
語意化標簽能夠讓機器可以讀懂內容。
如果希望進一步了解可以看一下知乎:http://www.hu.com/question/20455165
Ⅷ web前端,標簽至於前面顯示正常的title,把其他標簽點開的話,titile就變樣了,怎麼做到的
其實不難的,title也是元素切換就是事件
window.onload=function(){
//獲取title元素
var title=document.getElementsByTagName('title')[0];
//觸發
window.onblur=function(){
title.innerHTML='我改變了';
}
}
Ⅸ 前端,後台對接時 a 標簽的title屬性是前端寫上還是後台寫上的如果是前端寫上的,該怎麼寫
這個一般是需要前端來操作的,因為後台只是提供數據而已,並不知道你的頁面到底是干什麼的也不知道你的頁面是如何展示的,前端來操作也不會一直手動改呀,用JS動態改變就可以了,這時需要後台提供一個數據(比如關鍵字什麼的),然後前端收到後,JS中直接添加給a標簽的tittle即可。JS中可以用setAttribute('title', 要改的值)即可。
<!DOCTYPEhtml>
<htmllang="en">
<head>
<metacharset="UTF-8">
<title></title>
<styletype="text/css">
*{margin:0;padding:0;}
</style>
</head>
<body>
<ahref="###"title="abc">aaaaaa</a>
<scripttype="text/javascript">
vara=document.getElementsByTagName('a')[0];
a.setAttribute('title','bbbbbbb');
</script>
</body>
</html>
Ⅹ web前端開發中的實體標簽是什麼
查閱資料之後想到一下幾種解決方法
1,使用position:absolute模擬
<script type="text/javascript">
window.onscroll=function(){
$(".fixed").css("top",$(window).scrollTop());
$(".foot").css("top",$(window).scrollTop()+$(window).height());
}
</script>
問題來了:滑動頁面時頭部底部div會有明顯的抖動。
2,判斷當前獲得焦點元素是input則隱藏div改為position:absolute
<body onload=setInterval("a()",500)>
<script type="text/javascript">
function a(){
if(document.activeElement.tagName == 'INPUT'){
$(".fixed").css({'position': 'absolute','top':'0'});
} else {
$(".fixed").css('position', 'fixed');
}
}
</script>
問題來了:不停監控dom,消耗資源。如果input個數較少,可在input裡面添加onfocus事件好一些。但是如果是底部固定div此方法好像不太給力。
3,插件iscroll.js個人感覺不是很好用。可能方法不對,jQuery Mobile 沒嘗試,感覺會增負擔。
4,重點來了:
只需要在中間部分外層div添加css樣式position:fixed;top:50px; bottom:50px;overflow:scroll;就可以實現效果,無需插件。可拷貝下面代碼運行。
<!DOCTYPE html>
<html lang="zh_cmn">
<head>
<meta charset=utf-8 />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0" />
<title></title>
<style>
.head,.foot{position:fixed;left:0;height:38px;line-height:38px;width:100%;background-color:#99CC00;}
.head{top:0;}
.foot{bottom:0;}
.main{position:fixed;top:38px;bottom:38px;width:100%;overflow:scroll;background-color:#BABABA;}
</style>
</head>
<body>
<header class="head">頂部固定區域</header>
<article class="main" id="wrapper">
<div>
<p>當內容欲出隱藏時,灰色區域可上下拖動</p>
<p>當內容欲出隱藏時,灰色區域可上下拖動</p>
<p>當內容欲出隱藏時,灰色區域可上下拖動</p>
<p>當內容欲出隱藏時,灰色區域可上下拖動</p>
<p>當內容欲出隱藏時,灰色區域可上下拖動</p>
<p>當內容欲出隱藏時,灰色區域可上下拖動</p>
<p>當內容欲出隱藏時,灰色區域可上下拖動</p>
<p>當內容欲出隱藏時,灰色區域可上下拖動</p>
<p>當內容欲出隱藏時,灰色區域可上下拖動</p>
<p>當內容欲出隱藏時,灰色區域可上下拖動</p>
<p>當內容欲出隱藏時,灰色區域可上下拖動</p>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
<input type="text" value="" class="inputtext"> <br>
content <br>
content <br>
content <br>
content <br>
content <br>
content <br>
content <br>
content <br>
content <br>
</div>
</article>
<footer class="foot">底部固定區域</footer>
</body>
</html>
當小鍵盤出現時頭部、底部自動跳到頁面最頂端、最底端。鍵盤隱藏時又會固定在頭部,底部。頓時感覺開朗了。
—— 【仙】墨紙