HTML基础知识汇总

前言

一直想总结一下,苦于没有时间,正好看到了一个总结了不错的博客,我就在他的基础上进行一下测试并总结,原博地址:http://www.cnblogs.com/wanghzh/p/5805587.html

head标签

head 标签用于定义文档的头部,它是所有头部元素的容器。head中的元素可以引用脚本、指示浏览器在哪里找到样式表、提供元信息等等。文档的头部描述了文档的各种属性和信息,包括文档的标题、在 Web中的位置以及和其他文档的关系等。绝大多数文档头部包含的数据都不会真正作为内容显示给读者.<title> 定义文档的标题,它是 head部分中唯一必需的元素。

下面这些标签可用在 head 部分:<base>, <link>, <meta>, <script>, <style>, <title>

<!DOCTYPE html>  #顶部要这么写
<html>
<head>
    <meta charset="UTF-8">
    <meta name="keywords" content="搜索引擎根据这里面的东西">     
    <meta name="description" content="网页的描述信息">
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8">  <!--页面编码-->
    <meta http-equiv="Refresh" content="2;URL=https://www.baidu.com">   <!--2秒后重定向到某网站-->
    <title>web</title>                            
    <link rel="icon" href="http://www.jd.com/favicon.ico">          <!--网页图标-->
    <link rel="stylesheet" href="mycss.css">                 <!--外部css文件-->
</head>
<body>
</body>
</html>

body标签

body元素定义文档的主体。body元素包含文档的所有内容(比如文本、超链接、图像、表格和列表等等)

  • body一般有2种标签:块级标签和内联标签
# 块级标签:<p><h1><table><ol><ul><form><div>
# 内联标签:<a><input><img><sub><sup><textarea><span>

block(块)元素的特点
① 总是在新行上开始;
② 高度,行高以及外边距和内边距都可控制;
③ 宽度缺省是它的容器的100%,除非设定一个宽度。
④ 它可以容纳内联元素和其他块元素
inline元素的特点
① 和其他元素都在一行上;
② 高,行高及外边距和内边距不可改变;
③ 宽度就是它的文字或图片的宽度,不可改变
④ 内联元素只能容纳文本或者其他内联元素
对行内元素,需要注意如下
设置宽度width 无效。
设置高度height 无效,可以通过line-height来设置。
设置margin 只有左右margin有效,上下无效。
设置padding 只有左右padding有效,上下则无效。注意元素范围是增大了,但是对元素周围的内容是没影响的。
inline-block元素的特点
这个需要css的display来指定,我们有时候既希望元素具有宽度高度特性,又具有同行特性,这个时候我们可以使用inline-block。在CSS中通过display:inline-block对一个对象指定inline-block属性,简单来说就是将对象呈现为inline对象,但是对象的内容作为block对象呈现。之后的内联对象会被排列在同一行内。比如我们可以给一个link(a元素)inline-block属性值,使其既具有block的宽度高度特性又具有inline的同行特性。
最后稍微说一下display:none,这个就是把元素隐藏掉,常用在模态上,添加此属性让元素隐藏
案例:

<p style="background-color: red; 200px;height: 50px">block</p>  <!--块,总是新行开始,可以设定长宽边距,缺省宽度容器100%-->
<p style="background-color: red; 200px;height: 50px">block</p>  <!--块-->
<a style="background-color: yellow; 200px;height: 200px;">inline</a>  <!--内联,和其他元素在同一行,长宽边距不可变,设定也没用-->
<a style="background-color: yellow; 200px;height: 200px;">inline</a>  <!---->
<a style="background-color: greenyellow; 100px;height: 100px;display: inline-block">inline-block</a>  <!--即有同行属性(内联),有可以设定宽度高度(块)-->
<a style="background-color: greenyellow; 100px;height: 100px;display: inline-block">inline-block</a>  

# 可以通过css强制转化块和内联
<p style="background-color: red; 200px;height: 50px;display: inline">block</p> 
<a style="background-color: yellow; 200px;height: 200px;display: block;">inline</a> 
    <h1 id="mao1">mao1</h1>
    <h2 id="mao2">mao2</h2>
    <h3 id="mao3">mao3</h3>
    <h4 id="mao4">mao4</h4>
    <div style="height:5000px"></div>
    <a href="#mao1">锚1</a>
    <div style="height:5000px"></div>
    <a href="#mao2">锚2</a>

通过点击锚1、锚2可以实现页面位置的跳转

  • 各种标签示范
 <img src="http://leanote.com/public/upload/520/52d26b4e99c37b609a000001/images/logo/1f8b6b6b949141f835007304b0ce3944.png" alt="tupian" height="200px" width="200px" title="sss"><br>  <!--图片标签-->
 <a href="http://www.baidu.com" target="_blank">新页面跳转</a>  <!--新页面跳转-->   
 <a href="http://www.baidu.com">原页面跳转</a>  <!--原页面跳转-->   
        <ul> <!--无序列表-->
            <li>元素1</li>
            <li>元素2</li>
            <li>元素3</li>
        </ul>
        <ol> <!--有序列表-->
            <li>元素1</li>
            <li>元素2</li>
            <li>元素3</li>
        </ol>
        <dl> <!--自定义列表-->
            <dt>标题</dt>
            <dd>内容1</dd>
            <dd>内容2</dd>
        </dl>

 <table border="2px" cellpadding="1" cellspacing="1">  <!--表格,边框,内边距,外边距-->
     <thead>表单</thead>                   <!--thead和tbody 可以不用写-->
         <tr>
             <td>一</td>
             <td>二</td>
             <td>三</td>
         </tr>

     <tbody>
         <tr>
             <td>1</td>
             <td colspan="2">2,3</td>          <!--合并单元格-->
         </tr>
         <tr>
             <td>4</td>
             <td>5</td>
             <td rowspan="2">6</td>
         </tr>
         <tr>
             <td>7</td>
             <td>8</td>
         </tr>
     </tbody>
 </table>

效果示范:

form标签

表单用于向服务器传输数据。表单能够包含input元素,比如文本字段、复选框、单选框、提交按钮等等。表单还可以包含textarea、select、fieldset和 label 元素。

  • 表单属性
    HTML 表单用于接收不同类型的用户输入,用户提交表单时向服务器传输数据,从而实现用户与Web服务器的交互。表单标签,要提交的所有内容都应该在该标签中。
    action: 表单提交到哪。一般指向服务器端一个程序,程序接收到表单提交过来的数据(即表单元素值)作相应处理。
    method: 表单的提交方式 post/get 默认取值 就是 get
    get:
    1.提交的键值对.放在地址栏中url后面.
    2.安全性相对较差.
    3.对提交内容的长度有限制.
    post:
    1.提交的键值对 不在地址栏.
    2.安全性相对较高.
    3.对提交内容的长度理论上无限制.
    get/post是常见的两种请求方式.
    例子:
get:
<form action="http://www.sogou.com/sogou?">
    <input type="text" name="query"><br>
    <input type="submit" value="提交">
</form>
post:
<form action="http://192.168.1.114:9999/submit/" method="post">
    <input type="text" name="name"><br>
    <input type="password" name="pwd"><br>
    <input type="submit" value="提交">
</form>

其他常用标签

<form action="" method="" enctype="multipart/form-data">  <!--如果需要提交文件,需要加入multipart/form-data-->
        username<input type="text" name="query" >
        <br>
        password<input type="password" name="pd">
        <br>
        男<input type="radio" name="sex" value="male" >  <!--radio是互斥的-->
        女<input type="radio" name="sex" value="female" checked>  <!--默认是女-->
        <br>
        篮球<input type="checkbox" name="hobby" value="basketball">  <!--checkbox多选,name是提交后传回的key,value是他的值-->
        足球<input type="checkbox" name="hobby" value="soccer"><br>
        <input type="button" value="按钮"><br> <!--和下边方式相等-->
        <button>按钮</button><br>
        <input type="file" name="file_name"><br>  <!--传输文件-->
        <input type="submit" value="提交"><br> <!--只有type=submit才会触发form的提交-->
        <input type="date"><br> <!--会出现一个时间选框,可以录入时间-->
        <p>单选(django的外键常用)分组(可去掉分组)</p>
        <select name="城市">
            <optgroup label="河北省">  <!--加入分组-->
                <option value="石家庄">石家庄</option>
                <option value="唐山" selected>唐山</option>  <!--默认selected-->
                <option value="邯郸">邯郸</option>
            </optgroup>
        </select>
        <p>多选(django的多对多常用)</p>
        <select multiple="multiple" size="2">  <!--加入一个size属性,显示行数-->
            <option>北京</option>
            <option>上海</option>
            <option selected='selected'>广州</option>
        </select>
        <br>
        <textarea name="textarea"> </textarea>  <!--多文本输入-->

        <p>
             <label for="in">姓名</label>
             <input id="in" type="text">
        </p>
        <fieldset style=" 200px">  <!--出现一个选框-->
            <legend >Python</legend>
            <input type="text">
            <input type="text" disabled value="disabled">  <!--再次提交表单时,不会提交disabled的value,readonly会,disabled变为灰色-->
            <input type="text" readonly value="readonly">  <!--readonly只对input[text|password]和textarea有效,而disabled对select
ediouttoncheckbox都有效-->
        </fieldset>
</form>

效果

原文地址:https://www.cnblogs.com/caseast/p/5822186.html