<!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 href="https://liheyuting.github.io/" target="_blank">This is my blog</a>
target="_blank" 在新窗口打开文档
<a name="label">锚</a> #也可以用id属性替代MAME属性
建立锚了,可以在其他地方创建指向这个锚的链接
- 同一页面
<a href="#lable">xxxx</a>
- 其他页面
<a href="https://liheyuting.github.io/html/html_links.asp#label">xxxxx</a>
(Q这个链接是怎么确定的呢)
图片
<img src="dora.jpg" alt="https://liheyuting.github.io/" width="" height="">
- 背景图片
<body background="//"
- 排列图片
<img src="" align="botton(/middle/top)"
- 浮动图片
<img src="//" align="left(/fight)"
- 增加图片链接
在<img> 前后加上
<a href="https://liheyuting.github.io/html"></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="////">
内联框架
<iframe src="//"(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小时内与您取得联系。