HTML课后总结

学习要求
1.要会使用标签和属性。
2.在什么时候使用什么样的标签。
3.写出语义化的页面。
html的语义化:选择合适的标签、使用合理的代码结构,合理的命名,便于开发者阅读,同时让浏览器的爬虫和机器很好地解析,在搜索引擎里的权重会相对高一些。
合理的使用标签:尽量使用语义化标签,越是原生的标签加载的越快。
命名的规范:全部用小写,两个词连起来中间“中横线”链接起来。

第一课

  • sublime安装插件

步骤一:首先你需要为sublime text安装Package Control组件:
按Ctrl+`调出sublime text的console
粘贴以下代码到底部命令行并回车: import urllib2,os;pf='Package Control.sublime-package';ipp=sublime.installe dpackagespath();os.makedirs(ipp) if not os.path.exists(ipp) else None;open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read())
重启Sublime Text
在Perferences->package settings中看到package control,则表示安装成功
步骤二:使用Package Control安装Emmet插件:
按Ctrl+Shift+P命令板
输入install然后选择install Package,然后输入emmet找到 Emmet Css Snippets,点击就可以自动完成安装。

更多插件和快捷键(http://wenku.baidu.com/link?url=2Xab4xtekcXDAmEqxKGXODLGAmUewRfz5bTSW4WV8yUaiw-8I8tc3jq9pDIYRYLAuxGP0RxVGytYylDn5DK7UFLavd1zV0wjxSgeXQa00WC

不是全英文的HTML文件保存方式要以utf-8的方式去保存.浏览器再以utf-8的方式解码就能正确显示。

  • 颜色的三种写法:
    下图是两种写法,16进制色号最小值#00,最大值#ff;RGB写法最小值0,最大值255;还有一种直接英文颜色名字,如红色,直接写red。


    09.png
  • 常见的浏览器内核
    rem-em-px的用法:px是固定值。rem是相对于根节点,如果没有设置HTML字体大小,则以默认的16px为基础去计算。em是相对于父节点去改变,如果有很多嵌套的值则每个都计算一次。

第二课

  • meta的使用,
 <meta name="keywords" content="前端 饥人谷 社区 ">```
在百度搜索的时候,content里的信息就会被展示出来。(搜索引擎的规则也是在变的)

 ><meta http-equiv="X-UA-Compatible"content="IE=edge,chrome=1">
    
 ` <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">`的具体含义是:如果安装了GCF,则使用GCF来渲染页面「"chrome=1"」,如果没有安装GCF,则使用最高版本的IE内核进行渲染「"IE=edge"」.

* 开发调试
浏览器审查元素,Elements对 dome元素的展示修改 ,styles,对应的样式,console对应JS调试。
一般的调试用`console.log();`在后台展示.把信息展示在控制台上,
在写代码的过程中很容易出错,所以需要用开发调试,要知道他每一步进展到什么地步。
* 样式的三种写法,样式放文档头部,JS放尾部。
浏览器的缺省设置,默认设置。 (什么样式都没有设置的情况下显示)
* 外置样式表,提高复用性。(用的最多的)
```<link rel="stylesheet" type="text/css" href="./index.css">```
 ` ./`表示当前路径下,不加`./`也表示在当前路径下。
` ../`表示上级目录下.
href资源定位符。
* 内部样式表
><style type="text/css">
p{
      color: red;
      font-size: 20px;
 }
</style>

* 不要写成一排,`p{color: red;font-size: 20px;}`这样写的可能读性很差。
html5里面可以不加type="text/css"
> <style>
p{
      color: red;
      font-size: 20px;
 }
</style>

* 内置样式表
直接写在标签内,尽量不用。
><p style="border: 1px solid $fff; border-radius: 4px;">段落</p>

* 在CSS里引入其它的样式表
`@import url(index2.css);` 
* JS的引用 方式
* 内部JS,直接写在
><script>
        alert(1);
</script>

* 外部JS
><script type="text/javascript" src="js/basic.js"></script>
href基本只用于CSS和a标签的引用,JS用的是src.图片也用src.
*  新建HTML文件的时候最好命名为index.html.默认找到的为index.html.
* 字体
* 颜色 
* id和class
id定义唯一`#`,class定义一类`.`。
* 水平和垂直居中
行高 line-height=height的时候,垂直居中.可以做按钮,或者知道行高的情况下使用,段落超出无效。
水平居中 text-align:center.
><html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        body{
            background: red;
        }
        p{
            border: 2px solid white;
            border-radius: 4px;
            width: 100px;
            height: 60px;
            line-height: 60px;
            text-align: center;
        }
    </style>
</head>
<body>
    <p>
        确定
    </p>
</body>
</html>

###第三课
* 首行缩进2个字`text-decoration: 2em;`
* 强制折行`word-wrap:break-word;`
* a链接 
`<a href="#" target="_blank">我是链接</a>`**target="_blank"新标签打开**
a链接鼠标放上去有个手式,所以一般用a链接做按钮。**对a链接设置颜色必须指定到a链接本身。 **
下面是它的属性
>a{
  color: red;                          /*设置链接初始颜色为红色*/
  text-decoration: none;        /*去掉默认的下划线*/
  padding: 4px;                     /*加边框可以做成一个按钮*/ 
  background: #ccc;              /*按钮的背景色*/
  border-radius: 3px;             /*为按钮加个圆角*/
  transition: color 0.2s;          /*延迟两秒改变颜色,不要写在hover里面*/
}
a:hover{                     /* hover一个伪类,IE8以上才可以用鼠标放在目标上颜色改变为蓝色,hover也可以用在div上*/
  color: #eee;
}
a:active{                        /*鼠标按住的时候颜色变为蓝色*/
    background:blue;
}

* 跳转到锚点
```<a href="#tips" target="_blank">hunger</a>
...<p id="tips">点击链接跳转到这里</p>```

* 表格table
tr:行,td:列,th:表头;
基本写法
```scriput
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        table{
  border-collapse:collapse;     /*一般针对表格,只能写在table里,不能写table th /td*/
  width: 500px; 
  height: 100px;                
}
table th,table td{                  /*并列关系用逗号分隔*/           
  border: 1px solid #ccc;         
  padding: 5px;                  /*内边距,只能写在th,td里面,不能直接写table里面*/
}
th{
    background-color: green;
    color: #fff;
}
td:hover{
    background-color: #eee;
}
    </style>
</head>
<body>
        <table>
        <tr>
            <th>11</th>
            <th>22</th>
        </tr>
        <tr>
            <td>11</td>
            <td>22</td>
        </tr>
        <tr>
            <td>11</td>
            <td>22</td>
        </tr>
    </table>
</body>
</html> ```


![01.png](http://upload-images.jianshu.io/upload_images/1221115-c15feaa7dbfd8e98.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
从上图可以看出th默认情况下是垂直和水平居中的,但td只是垂直居中并没有水平居中。
* 设置图片水平垂直居中
><style>
div{
    width: 500px;
    height: 500px;
    background-color: #ccc;
    display: table-cell;                        /*div以表格的方式去渲染*/
    vertical-align: middle;                  /*在div中无效,但在表格中有效*/
    text-align: center;
}
    </style>
</head>
<body>
    <div>
            <img src="1.png" alt="图片">
    </div>
</body>

`display`常用的值//block; inline; inline-block; none; table-cell;
display-none:让一个元素消失,不显示在页面上。但依然在DOM树中并没有真正的消失.
opacity:0,透明度设置0,则不可见。

* 有序列表ol,无序列表ul,自定义列表dl.(块级元素)
有序列表的使用,当有明显的步骤,1.2.3....
无序列表是最常见的,用的最多的。凡是并列的,都建议用ul.
页面分析,先分大的区块,再分小的区块,再去一步步细化。
自定义列表,dl里面包含dt表头和dd
分析下图

![02.png](http://upload-images.jianshu.io/upload_images/1221115-428148e74f641d62.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

* div
html里使用最多的标签,用于页面结构划分,页面分区
比如一个典型的网页分为头部,内容,尾部;内容可分为侧边栏和主体内容
```javascrput
<body> 
     <div id="header"></div>
     <div id="content">
          <div class="sidebar"></div> 
          <div class="main"></div> 
     </div> 
     <div id="footer"></div>
</body>```

 ```javascrput
style type="text/css"> 
    div { 
        width: 100px; /* 宽度 */ 
        height: 100px; /* 高度 */ 
        border: 1px solid red; /* 边框 */ 
        text-align: center; /* 内部文本居中 */ 
        background-color: blue; /* 背景颜色*/
        color: white; /* 字体颜色 */ 
        border-radius: 4px; /* 圆角 */ 
  }
</style> 
  • text-align应用在块级元素上(div或者p),对它内部的行内元素产生效果
  • 块级别元素、行内元素
    块级元素占用空间是一整行,行内元素占用空间是它自身的内容宽度。行内元素可以一并排显示,块级元素不能。
    块级元素:div、p、h1...h6、table、tr、ul、li、dl、dt、form
    行内元素:a、span、img、input、button、em、textarea
    更多的块级元素和行内元素 http://blog.csdn.net/freshlover/article/details/7076831
  • 对行内元素,需要注意如下:
    设置宽度width 无效。
    设置高度height 无效,可以通过line-height来设置。
    设置margin 只有左右margin有效,上下无效。
    设置padding 只有左右padding有效,上下则无效。注意元素范围是增大了,但是对元素周围的内容是没影响的。
    下图是line-height对行内元素的应用:


    05.png
06.png

可以通过display: block;/display: inline;去改变行内元素和块级元素本身的属性;
display:inline-block既能像行内元素一样水平的排列,又有块级元素的一些特性,比如上下边距,左右边距,宽,高;IE8以下不能使用。

第4课

  • from表单
    用于把用户输入的数据提交到后台
    input都要有name属性
    action: 提交到的地址
    method: 提交方式,get和post,应用的时候需要和后端交互
    区别
  1. 数据提交方式不同,get把提交的数据url可以看到,post看不到
  2. get一般用于提交少量数据,post用于提交大量数据
  3. get最多提交1k数据,浏览器的限制。post理论上无限制,受服务器限制
  4. get提交的数据在浏览器历史记录中,安全性不好
    查看提交结果,审查元素 network,Headers,勾选preserve log 控制刷新
    随机验证码由后端生成 ,前端只用写个img
    input name值一样,表示一组,只能单选,不能多选.(checkbox默认多选)
    checkbox:提交一组数据。默认选择上某项,只需要加一个checked
<form name="myform" action="/text/1.php" method="post">
        <div>
            爱好: <input type="checkbox" name="hobbies[]" value="music" checked />音乐
                  <input type="checkbox" name="hobbies[]" value="drawing" />画画
                  <input type="checkbox" name="hobbies[]" value="travel" />旅行
                  <input type="checkbox" name="hobbies[]" value="yoga" />瑜伽
                  <input type="checkbox" name="hobbies[]" value="movie" />电影
        </div>
        <input type="submit" value="提交">
    </form>
08.png

Hidden:隐藏域,用于暂存数据,安全校验.
select:多选框,selected定义默认选项.

<form action="/test/6.php"> 
    <select name="mycar">
      <option value ="volvo">Volvo</option>
      <option value ="saab">Saab</option>
      <option value="opel">Opel</option>
      <option value="audi" selected>Audi</option>
    </select>
    <button type="submit">提交</button>
</form>
07.png

iframe:在一个页面中嵌入另一个页面。做复杂效果弹框可以直接嵌入Iframe.

HTML的课程已经结束,但还有很多知识点需要再继续深入巩固,一边看视频一边整理的,感觉有些乱,还有很多不到位的,需要补充的会继续更改,有理解不对的地方希望大家多提意见。在这里谢谢各位看官了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,390评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,821评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,632评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,170评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,033评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,098评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,511评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,204评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,479评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,572评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,341评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,893评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,171评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,486评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,676评论 2 335

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,703评论 1 92
  • 本课来自http://www.imooc.com/learn/9请不要用作商业用途。 HTML5 HTML介绍 H...
    PYLON阅读 3,174评论 0 5
  • Html 标签 斜体 粗体 单独的样式 引用文本 长文本引用 换行 空格 分割线 地址信息 单行代码 多行代码 无...
    SunnySky_阅读 543评论 0 5
  • 转载请声明 原文链接地址 关注公众号获取更多资讯 第一部分 HTML 第一章 职业规划和前景 职业方向规划定位...
    程序员poetry阅读 16,499评论 32 459
  • 张大户得手之后,更加积极寻找和创造各种机会,充分发挥了一个人可以调度的所有脑细胞,张大户并不知道他这就是后世所谓的...
    林蔚安阅读 370评论 0 0