<!DOCTYPE html>
<html>
<head>
<!-- 插入外部樣式表 -->
<link rel="stylesheet" type="text/css" href="style.css">
<title>title</title>
</head>
<body>
<h1>啦啦啦</h1>
<p>我是賣報的小行家</p>
</body>
</html>
標題
<h1>一級標題</h1>
<h2>二級標題</h2>
<h3>三級標題</h3>
<h4>四級標題</h4>
<h5>五級標題</h5>
<h6>六級標題</h6>
<hr/>創建水平線,分割內容
<!-- 注釋 -->
段落
<p>段落</p>
<br/>折行
鏈接
<a target="_blank">This is my blog</a>
target="_blank" 在新窗口打開文檔
<a name="label">錨</a> #也可以用id屬性替代MAME屬性
建立錨了,可以在其他地方創建指向這個錨的鏈接
- 同一頁面
<a href="#lable">xxxx</a>
- 其他頁面
<a >xxxxx</a>
(Q這個鏈接是怎么確定的呢)
圖片
<img src="dora.jpg" alt="https://liheyuting.github.io/" width="" height="">
- 背景圖片
<body background="http://"
- 排列圖片
<img src="" align="botton(/middle/top)"
- 浮動圖片
<img src="http://" align="left(/fight)"
- 增加圖片鏈接
在<img> 前后加上
<a ></a>
按鈕
<botton>click</botton>
列表
<ul> #unorder list 無序列表
<li>a</li>
<li>b</li>
</ul>
<ol> #order list 有序列表
- 定義列表
<dl>
<dt>1111</dt>
<dd>2222</dd>
<dt>3333</dt>
<dd>4444</dd>
定義列表的列表項內部可以使用段落、換行符、圖片、鏈接以及其他列表等
(Q這個不是太明白)
dl 定義定義列表
dt 定義定義項目
dd 定義定義的描述
- 嵌套列表
多加幾層
(Q css時多了解下)
class 規定元素的類名
id 元素的唯一id
style inline style 行內樣式
title 規定元素的額外信息
文本標簽
<b> 粗體
<big> 大號字
<em> 著重文字
<i> 斜體
<small> 小號字
<strong> 加重語氣
<sub> 定義下標字
<sup> 定義上標字
<ins> 增加下劃線
<del> 增加刪除線
引用
<q> 短引用
<blockquote> 長引用
<abbr> 定義縮寫
<dfn> 定義項目或縮寫的定義
<address> 定義文檔或文章的聯系方式/作者(通常斜體顯示,大多數瀏覽器在此元素前后折行)
<cite> 定義著作的標題(斜體顯示)
表格
- 表格
<table border='1'>
<tr>
<td> row 1, cell 1</tr>
<td> row 1, cell 2</tr>
</tr>
<tr>
<td> row 2, cell 1</tr>
<td> row 2, cell 2</tr>
</tr>
</table>
#table 定義表格
#tr 若干行
#td table data 表格數據
- 邊框屬性
border
- 表頭
<th>heading</th>
#th table heading
- 空單元格
<td> </td>
- 跨行跨列
colspan
eg <th colspan="2"></th>
rowspan
eg <th rowspan="2"></th>
- 表格內的標簽
(比如實現圖片一塊塊)
- 單元格邊距(cell padding)
<table cellpadding="10"></table>
- 單元格間距(cell spacing)
<table cellspacing="10"></table>
- 背景顏色或圖片
<table bgcolor="blue"></table>
or (background='//')
- 表格內排列內容對齊
align="left(/right)"
- frame 外框
frame=""
box 四面鐵框
above 頭頂有框
below 腳下有框
hsides 上頭下頭被框
vsides 兩邊有框
塊
<div> 在CSS里設置樣式屬性
可用于文檔布局
<span> 為部分文本設置樣式屬性
類
類-塊-行
(Q這塊有點疑問,id, name, class相關)
布局
- header 頁眉
- nav 導航鏈接的容器
- section 定義文檔中的節
- article 定義獨立的自包含文章
- aside 定義內容之外的內容(比如側欄)
- footer 定義文檔或節的頁腳
- details 定義額外的細節
- summary 定義details 元素的標題
(detail/article/summary Q下次注意下)
響應式web設計
(Q雖然現在還不懂,最好要有印象,以后再回頭看)
RWD響應式web設計(responsive web design)
- 自己創建
在head中<style>中設置
- Bootstrap
(Q之后學)
使用現成的CSS框架
在head中加入:
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet"
href="http:////">
內聯框架
<iframe src="http://"(width="" height="" frameborder="0")></iframe>
- 作為連接的目標時
加入name屬性
name=""
腳本
(Q之后學)
”假設6個月之后的你在教現在的你學習“
”強迫輸出促進輸入“
整理過程是一個復習的過程,雖然離現在實質工作內容相差千萬,還應起項目直接實操才好。
稍加整理,如有錯誤或者其他的建議,還請不吝賜教,萬分感謝。
HTML
avaScript 是目前最流行的編程語言之一,正如大多數人所說:“如果你想學一門編程語言,請學JavaScript。”
FreeCodeCamp的創始人 Quincy Larson 在最近的一次采訪中被問到哪種語言開發人員應該首先學習。他回答:“ JavaScript。”
“軟件正在吞噬世界,JavaScript正在吞噬軟件。JavaScript每年都在變得越來越占主導地位,而且沒人知道最終會取代它的是什么。" 如果您沒有充分的理由學習一種新語言(例如您的工作要求您維護非JavaScript代碼庫),那么我的建議是著重于提高JavaScript的水平。”
聽我說這么多,你是不是很激動呢。這里有127端常用的JS代碼片段,方便你學習和使用。
如果數組所有元素滿足函數條件,則返回true。調用時,如果省略第二個參數,則默認傳遞布爾值。
const all=(arr, fn=Boolean)=> arr.every(fn);
all([4, 2, 3], x=> x > 1); // true
all([1, 2, 3]); // true
判斷數組中的元素是否都相等
const allEqual=arr=> arr.every(val=> val===arr[0]);
allEqual([1, 2, 3, 4, 5, 6]); // false
allEqual([1, 1, 1, 1]); // true
此代碼示例檢查兩個數字是否近似相等,差異值可以通過傳參的形式進行設置
const approximatelyEqual=(v1, v2, epsilon=0.001)=> Math.abs(v1 - v2) < epsilon;
approximatelyEqual(Math.PI / 2.0, 1.5708); // true
此段代碼將沒有逗號或雙引號的元素轉換成帶有逗號分隔符的字符串即CSV格式識別的形式。
const arrayToCSV=(arr, delimiter=',')=>
arr.map(v=> v.map(x=> `"${x}"`).join(delimiter)).join('\n');
arrayToCSV([['a', 'b'], ['c', 'd']]); // '"a","b"\n"c","d"'
arrayToCSV([['a', 'b'], ['c', 'd']], ';'); // '"a";"b"\n"c";"d"'
此段代碼將數組元素轉換成<li>標記,并將此元素添加至給定的ID元素標記內。
const arrayToHtmlList=(arr, listID)=>
(el=> (
(el=document.querySelector('#' + listID)),
(el.innerHTML +=arr.map(item=> `<li>${item}</li>`).join(''))
))();
arrayToHtmlList(['item 1', 'item 2'], 'myListID');
此段代碼執行一個函數,將剩余的參數傳回函數當參數,返回相應的結果,并能捕獲異常。
const attempt=(fn, ...args)=> {
try {
return fn(...args);
} catch (e) {
return e instanceof Error ? e : new Error(e);
}
};
var elements=attempt(function(selector) {
return document.querySelectorAll(selector);
}, '>_>');
if (elements instanceof Error) elements=[]; // elements=[]
此段代碼返回兩個或多個數的平均數。
const average=(...nums)=> nums.reduce((acc, val)=> acc + val, 0) / nums.length;
average(...[1, 2, 3]); // 2
average(1, 2, 3); // 2
一個 map()函數和 reduce()函數結合的例子,此函數先通過 map() 函數將對象轉換成數組,然后在調用reduce()函數進行累加,然后根據數組長度返回平均值。
const averageBy=(arr, fn)=>
arr.map(typeof fn==='function' ? fn : val=> val[fn]).reduce((acc, val)=> acc + val, 0) /
arr.length;
averageBy([{ n: 4 }, { n: 2 }, { n: 8 }, { n: 6 }], o=> o.n); // 5
averageBy([{ n: 4 }, { n: 2 }, { n: 8 }, { n: 6 }], 'n'); // 5
此函數包含兩個參數,類型都為數組,依據第二個參數的真假條件,將一個參數的數組進行分組,條件為真的放入第一個數組,其它的放入第二個數組。這里運用了Array.prototype.reduce() 和 Array.prototype.push() 相結合的形式。
const bifurcate=(arr, filter)=>
arr.reduce((acc, val, i)=> (acc[filter[i] ? 0 : 1].push(val), acc), [[], []]);
bifurcate(['beep', 'boop', 'foo', 'bar'], [true, true, false, true]);
// [ ['beep', 'boop', 'bar'], ['foo'] ]
此段代碼將數組按照指定的函數邏輯進行分組,滿足函數條件的邏輯為真,放入第一個數組中,其它不滿足的放入第二個數組 。這里運用了Array.prototype.reduce() 和 Array.prototype.push() 相結合的形式,基于函數過濾邏輯,通過 Array.prototype.push() 函數將其添加到數組中。
const bifurcateBy=(arr, fn)=>
arr.reduce((acc, val, i)=> (acc[fn(val, i) ? 0 : 1].push(val), acc), [[], []]);
bifurcateBy(['beep', 'boop', 'foo', 'bar'], x=> x[0]==='b');
// [ ['beep', 'boop', 'bar'], ['foo'] ]
用于檢測頁面是否滾動到頁面底部。
const bottomVisible=()=>
document.documentElement.clientHeight + window.scrollY >=(document.documentElement.scrollHeight || document.documentElement.clientHeight);
bottomVisible(); // true
此代碼返回字符串的字節長度。這里用到了Blob對象,Blob(Binary Large Object)對象代表了一段二進制數據,提供了一系列操作接口。其他操作二進制數據的API(比如File對象),都是建立在Blob對象基礎上的,繼承了它的屬性和方法。生成Blob對象有兩種方法:一種是使用Blob構造函數,另一種是對現有的Blob對象使用slice方法切出一部分。
const byteSize=str=> new Blob([str]).size;
byteSize(''); // 4
byteSize('Hello World'); // 11
將字符串的首字母轉成大寫,這里主要運用到了ES6的展開語法在數組中的運用。
const capitalize=([first, ...rest])=>
first.toUpperCase() + rest.join('');
capitalize('fooBar'); // 'FooBar'
capitalize('fooBar', true); // 'FooBar'
將一個句子中每個單詞首字母轉換成大寫字母,這里中要運用了正則表達式進行替換。
const capitalizeEveryWord=str=> str.replace(/\b[a-z]/g, char=> char.toUpperCase());
capitalizeEveryWord('hello world!'); // 'Hello World!'
此段代碼將非數值的值轉換成數組對象。
const castArray=val=> (Array.isArray(val) ? val : [val]);
castArray('foo'); // ['foo']
castArray([1]); // [1]
將數組中移除值為 false 的內容。
const compact=arr=> arr.filter(Boolean);
compact([0, 1, false, 2, '', 3, 'a', 'e' * 23, NaN, 's', 34]);
// [ 1, 2, 3, 'a', 's', 34 ]
統計數組中某個值出現的次數
const countOccurrences=(arr, val)=> arr.reduce((a, v)=> (v===val ? a + 1 : a), 0);
countOccurrences([1, 1, 2, 1, 2, 3], 1); // 3
此代碼段使用 existSync() 檢查目錄是否存在,然后使用 mkdirSync() 創建目錄(如果不存在)。
const fs=require('fs');
const createDirIfNotExists=dir=> (!fs.existsSync(dir) ? fs.mkdirSync(dir) : undefined);
createDirIfNotExists('test');
// creates the directory 'test', if it doesn't exist
返回當前訪問的 URL 地址。
const currentURL=()=> window.location.href;
currentURL(); // 'https://medium.com/@fatosmorina'
返回當前是今年的第幾天
const dayOfYear=date=>
Math.floor((date - new Date(date.getFullYear(), 0, 0)) / 1000 / 60 / 60 / 24);
dayOfYear(new Date()); // 272
將字符串的首字母轉換成小寫字母
const decapitalize=([first, ...rest])=>
first.toLowerCase() + rest.join('')
decapitalize('FooBar'); // 'fooBar'
今天的內容就和大家分享到這里,感謝你的閱讀,如果你喜歡我的分享,麻煩給個關注、點贊加轉發哦,你的支持,就是我分享的動力,后續會持續分享剩余的代碼片段,歡迎持續關注。
本文原作者:Fatos Morina
來源網站:medium
注:并非直譯
多的企業都非常熱衷于SEO優化,很多的從事SEO優化的站長,每天只顧著發布外鏈,更新站內的文章,卻忽視了H1標簽優化的重要性,認為做搜索排名工作只要重視內容和外鏈就可以了,但是如果你稍微去優化下H1標簽,你可能會獲得意想不到的優化效果哦~
一、H1標簽是什么?
所謂的H1標簽是指網頁html中對文本標題所進行的著重強調的一種標簽,該標簽主要起強調作用,告訴搜索引擎這是一段文字的標題,加深網站對關鍵詞的關聯性,是網站獲良好優化效果的重要組成部分。一個頁面中,h1標簽只能出現一次,否則H1標簽就失去了存在的意義,而且對于搜索引擎來說,這是典型的SEO過度,遲早會受到搜索引擎的懲罰。
二、H1標簽的重要性體現在哪里?
1、提升關鍵詞排名
H1標簽對于網站關鍵詞排名有很大的幫助,其主要作用是修飾網頁的主標題,由于搜索引擎需要在一堆代碼中明白這個頁面的內容,而這時H1標簽就起到作用,告訴搜索引擎標題的位置,以便于他們迅速的掌握文本的大意。一旦搜索引擎明白了這個頁面的主要內容,自然也就會收錄這個頁面,并增加頁面關鍵詞的排名。
2、提升用戶體驗度 通常情況下,H1標簽都用來修飾網頁標題的,那么所呈現給用戶的的自然也就是這個頁面的中最主要的內容,那么當用戶進入這頁面自然也就能夠非常直觀的了解到這個頁面的內容,從而增加對網站的信任度。
3、增加了首頁的權重
相較于網易的把H1標簽置于CSS款式中,創享無限覺得大部分的站長應該會老誠實實的把H1標簽放置在LOGO里面,并且不做任何的隱藏處置。以H1標簽可以引起搜索引擎的注意,這樣做的目的就是為了增加首頁的權重以及首頁關鍵詞的排名。
三、H1標簽的其他用途?
H1服務的另一個重要因素是可用性,它特別適用于有視力障礙的人和使用屏幕閱讀器的人,幾乎每個主要的屏幕閱讀器都能夠跳到頁面上的H1標簽,告訴訪問者頁面的內容。如果它丟失了,那么您的網站肯定不是那么可用和可訪問,由于Google比以往任何時候都更重視可用性,尤其是移動可用性,因此這一點變得更加重要。
其實,H1不管時以哪種形式出現,但是每個頁面中只能夠運用一次H1標簽,并且是在首頁的位置,一個頁面拖添加的H1標簽太多就會失去效果,不但如此,還有可能導致優化過度,遭到搜索引擎的懲罰。
以上就是創享無限分享資訊。關注我們,還可了解更多seo文章知識!
*請認真填寫需求信息,我們會在24小時內與您取得聯系。