• Python全栈开发,Day14


    本章内容

    1. Doctype
    2. Meta
    3. Title
    4. Link
    5. Style
    6. Script
    7. 常用标签

    概述

    HTML是英文Hyper Text Mark-up Language(超文本标记语言)的缩写,他是一种制作万维网页面标准语言(标记)。相当于定义同意的一套规则,大家都来遵守他,这样就可以让浏览器根据标记语言的规则去解释它。

    浏览器负责将标签翻译成用户“看得懂”的格式,呈现给用户!(例:djangomoan模块引擎)

    在开始笔记之前先来一个图,文档树:

    上图就是一个Html文件的基本内容,我们可以知道html是由head(头部)和body(正文)组成。下面就来介绍一下head中的一些规则。

     

    一、Doctype

    Doctype告诉浏览器使用什么样的html或xhtml规范来解析文档,因为你知道我们现有的规范可不止一种,你不告诉浏览器用什么样的规范,那浏览器知道该用哪个来给你解析?

    有和无的区别

    1. BackCompat:标准兼容模式未开启(或叫怪异模式[Quirks mode]、混杂模式)
    2. CSS1Compat:标准兼容模式已开启(或叫严格模式[Standards mode/Strict mode])

     这个属性会被浏览器识别并使用,但是如果你的页面没有DOCTYPE的声明,那么compatMode默认就是BackCompat,这也就是恶魔的开始--浏览器按照自己的方式解析渲染页面,那么,在不同的浏览器就会显示不同的样式。如果你的页面添加了那么,那么就等同于开启标准模式,那么浏览器就得老老实实的按照W3C的标准解析渲染页面,这样依赖,你的页面在所有的浏览器里显示的就都是一个样子了。

    那我们该用什么?

    Doctype告诉浏览器使用什么样的html或xhtml规范来解析html文档,dtd文件爱你则包含了标记、attributes、properties、约束规则。

     

     二、Meta(metadata information)

    提供有关页面的元信息,例:页面编码、刷新、跳转、针对搜索引擎和更新频度的描述和关键词

      1.页面编码(告诉浏览器是什么编码) 

        < meta http-equiv = "content-type"

        content = "text/html;charset = utf-8">

      2.刷新和跳转

        < meta http-equiv = Refresh"

        Content = "5;

        Url = http://www.authome.com.cn"/>

      3.关键词

        < meta name = "keywords" content = "星际2,星际老男孩,专访,F91,小色,JOY"

      4.描述

        例如:cnblogs

      5.X-UA-Compatible

      微软的IE6是通过XP、Win2003等操作系统发布出来,作为占统治地位的桌面操作系统,也使得IE占据了通知地位,许多的网站开发的时候,就按照IE6的标准去开发,而IE6自身的标准也是微软公司内部定义的。到了IE7出来的时候吗,采用了微软公司内部标准以及部分W3C的标准,这个时候许多网站升级到IE7的时候,就比较痛苦,很多代码必须调整后,才能够正常的运行。而到了微软的IE8这个版本,基本上把微软内部自己定义的标准抛弃了,而全面的支持W3C的标准,由于基于对标准彻底的变化了,使得原先在早起IE8版本上能够访问的网站,在IE8中无法正常的访问,会出现一些排版错软、文字重叠,显示不全等各种兼容性错误。

    与任何早期浏览器版本相比,Internet Explorer 8对于行业标准提供了更加爱紧密的支持。因此,针对旧版本的浏览器设计的站点可能不会按预期显示。为了帮助减轻任何问题,Internet Explorer 8引入了文档兼容性的概念,从而允许您指定站点所支持的Internet Explorer版本。文档兼容i系那个在Internet Explorer 8中添加了新的模式;这些模式将告诉浏览器如何解释和呈现网站。如果您的站点在Internet Explorer 8中无法正确显示,则可以更新该站点以支持最新的web标准(首选方式),也可以强制Internet Explorer 8按照在旧版本的浏览器中查看站点的方式来显示内容。通过使用meta元素将X-UA-Compatible标头添加到网页中,可以实现这一点。

    当Internet Explorer 8遇到未包含X-UA-Compatible标头的网页时,它将使用指令来确定如何显示该网页。如果该指令丢失或指令基于标准的文档类型,则Internet Explorer 8将以IE5模式(Quirks模式)显示该网页。

    < meta http-equiv ="X-UA-Compatible"

    content = "IE=EmulateIE7" />

     

    三、Title

      网页头部信息

      例如:

        <title> 百度一下,你就知道</title>

        

      当然示例中只是单纯的文字,我是用pycharm写的,然后用Google Chrome打开的。

     

    四、Link

    1. css

        < link rel="stylesheet" type="text/css"

        href="css/common.css"

      2.icon

        < link rel="shortcut icon"

        href="image/favicon.ico">

      <link>的用途是连接样式表,出现在head中,没有数量限制。

     

    五、Style

      用于定义页面中的样式,例如:

    1 < style type="text/css" > 
    2     .bb{ 
    3           background-color: red; 
    4           } 
    5 < /style>  

     

     

      .bb是什么呢?下一章你就知道了。

     

    六、Script

      1.引进文件

        < script type="text/javascript" src="http://www.googletagservices.com/tag/js/gpt.js">

        < /script>

      2.写js代码

        < script type="text/javascript" >...< /script>

     

    七、常用标签

      HTML标签是HTML语言中最基本的单位,与大小写无关,一般标签成对出现,当然也有单独呈现的,比如:<img src="百度百科".jpg />等。我们写静态网页就是用这些标签来写出来的。

      标签一般分为两种:块级标签 和行内标签

    • a、span、select等
    • div、h、p等

    各种符号

     由于我认为对于我来说,并不想成为一个前端开发工程师,而是python高级开发工程师,所以呢,要用的时候就再翻吧。符号综合链接,点我吧-->

    p 和br

     p表示段落,默认段落之间是有间隔的!

     br是换行

    a标签

     <a href="http://www.autohome.com.cn" > </a>

    1. target属性,_black表示新的页面打开
    2. 锚(根据我百度到的意思,大概就是指向某个链接(或超链接),如上。)

    h标签

     有h1、h2、h3、h4、h5、h6,h标签呢基本就是字号大小,h1最大,之后随数字增大减小。

    select标签

     这个标签基本就是用来做下拉框的,看以下例子:

     1.单个下拉框

    1 <select>
    2     <option value="1" >上海</option>
    3     <option value="1" >北京</option>
    4     <option value="1" selected="selected">广州</option>
    5 </select>

     

    这段代码中,selected是option标签中的一个属性,就是为了给下拉框设置默认值。option详解,-->

    看效果:

     2.一次显示多个值

    1 <select size='2'>
    2     <option>上海</option>
    3     <option>北京</option>
    4     <option>广州</option>
    5     <option>湖北</option>
    6 </select>

     

    size属性就是设置可显示的值的个数,例1中没有设置,则默认显示的值的个数为1。

    看效果:

     3.同时选定多个选项

    1 <select multiple="multiple" size='2'>
    2     <option>上海</option>
    3     <option>北京</option>
    4     <option>广州</option>
    5     <option>广州</option>
    6 </select>

     

    multiple属性就是允许选定多个值,在例1、2中,我们都只能选定单个,加上multiple属性后按住ctrl即可同时选定多个值。

    看效果:

     4.选项组合

     1 <select>
     2     <optgroup label='河北省'>
     3         <option>石家庄</option>
     4         <option>邯郸</option>
     5     </optgroup>
     6     <optgroup label='山西省'>
     7         <option>太原</option>
     8         <option>平遥</option>
     9     </optgroup>
    10 </select>

     

    optgroup标签可以把相关的选项组合在一起,label为选项组合规定描述,还有一个disabled属性是规定禁用该选项组。

    看效果:

    input标签

     input标签就是一个输入框,这个效果就不演示了。

    input:checkbox

     checkbox属性是一个选择框

    1 <div>
    2     <input type='checkbox'/>
    3     <input type='checkbox' checked/>
    4     <input type='checkbox' checked='checked'/>
    5 </div>

     

    checked属性为默认勾选

    看效果:

    input:radio

     radio属性是一个选择按钮

    1 <div>
    2<input type="radio" value="man">
    3<input type="radio" value="male">
    4     保密<input type="radio" value="no">
    5     <br/><br/>
    6<input type="radio"  name="gender" value="man">
    7<input type="radio"  name="gender" value="male">
    8     保密<input type="radio" checked="checked" name="gender" value="no">
    9 </div>

     

    第一行中的radio按钮默认是没有选中的,其次可以选择多个;第二行中只可选择一个并且必定要选择一个。

    看效果:

    input:password

     password的输入是被掩盖的,提供用户输入某些敏感的数据,比如密码等。

    1 <div>
    2     <input type='text'/>
    3     <input type='password'/>
    4 </div>

     

    看效果:

    input: button&submit

     button对象是一个按钮

     submit对象是一个提交按钮

    1 <div>
    2     <input type='button' value='button' />
    3     <input type='submit' value='submit'/>
    4 </div>

     

    button对象没有默认的行为,也就是说其实你点它它也不会鸟你,它主要通过onclick事件来进行使用的。

    submit对象一般用来提交表单,在提交之前,触发onclick事件句柄,并且一个句柄可以通过返回fasle来取消表单提交。

    看效果:

    input:file

     该对象是用于发送文件的

    1 <div>
    2     <input type='file' value='file' />
    3     <p>提交文件时: enctype='multipart/form-data' method='POST'</p>
    4 </div>

     

     该元素的value属性保存了用户指定的文件的名称,但是当包含一个file-upload元素的表单被提交的时候,浏览器会向服务器发送选中的文件的内容而不仅仅是发送文件名。

    看效果:

    textarea

     该标签定义多行的文本输入控件,文本区中可容纳无限数量的文本,其中的文本的默认字体是等宽字体(通常是Courier)

    1 <div>
    2     <textarea></textarea>
    3     <textarea style='500px;height: 200px;'></textarea>
    4 </div>

     

    看效果:

     

    label

     带有两个输入字段和相关标记的简单HTML表单

    1 <div>
    2     姓名:<input id='name1' type='text' />
    3     婚否:<input id='marriy1' type='checkbox' />
    4     <br/>
    5     <label for='name2'>姓名:<input id='name2' type='text' /></label>
    6     <label for='marriy2'>婚否:<input id='marriy2' type='checkbox' /></label>
    7 </div>

     

    看效果:

     ul、ol、dl

    <ul>标签是无序HTML列表:

    1 <ul>
    2     <li>ul.li</li>
    3     <li>ul.li</li>
    4     <li>ul.li</li>
    5 </ul>

     

    看效果:

    <ol>标签是有序HTML列表:

    1 <ol>
    2     <li>ol.li</li>
    3     <li>ol.li</li>
    4     <li>ol.li</li>
    5 </ol>

     

    看效果:

    <dl>标签定义列表,用于结合<dt>(定义列表中的项目)和<dd>(描述列表中的项目)

    1 <dl>
    2     <dt>河北省</dt>
    3     <dd>邯郸</dd>
    4     <dd>石家庄</dd>
    5     <dt>山西省</dt>
    6     <dd>太原</dd>
    7     <dd>平遥</dd>
    8 </dl>

     

    看效果:

    table

     定义HTML表格,简单的HTML表格由table元素以及一个或多个tr、th或td元素组成。

     tr元素定义表格行,th元素定义表头,td元素定义表格单元。

    1 <table border='1'>
    2     <tr><td>1</td><td>2</td><td>3</td></tr>
    3     <tr><td>1</td><td>2</td><td>3</td></tr>
    4     <tr><td>1</td><td>2</td><td>3</td></tr>
    5 </table>

     

    看效果:

     

    更复杂的HTML表格也可能包括caption、col、colgroup、thead、tfoot以及tbody元素。

     1 <table border='1'>
     2     <thead>
     3         <tr><th colspan='3'>1</th></tr>
     4         <tr><th>1</th><th>2</th><th>3</th></tr>
     5     </thead>
     6     <tbody>
     7         <tr><td>1</td><td>2</td><td>3</td></tr>
     8         <tr><td>1</td><td>2</td><td>3</td></tr>
     9         <tr><td>1</td><td>2</td><td>3</td></tr>
    10         <tr><td rowspan='3'>1</td><td>3</td><td>3</td></tr>
    11         <tr><td>3</td><td>3</td></tr>
    12         <tr><td>3</td><td>3</td></tr>
    13         <tr><td>3</td><td>3</td><td>3</td></tr>
    14     </tbody>
    15 </table>

     

    看效果:

    fieldset

     可将表单内的相关元素分组

    1 <fieldset>
    2     <legend>登录</legend>
    3     <p>用户名:</p>
    4     <p>密码:</p>
    5 </fieldset>

     

     看效果:

     form

     用于为用户输入创建HTML表单,表单能够包含input、menus、textarea、fieldset、leqund和label元素。

    1 <form method='POST' action='http://www.baidu.com'>
    2     <input type='submit' value='submit'/>
    3 </form>
    4 <br/><br/><br/>
    5 <form method='GET' action='http://www.baidu.com/s'>
    6     <input type='text' name='wd'>
    7     <input type='submit' value='submit'/>
    8 </form>

     

    看效果:

    第一个submit是以POST方式提交的,所以呢,是会报错的。

    第二个submit是以GET方式提交的,则会正确的转到百度。

     

    如果想深入学习,可以去HTML参考手册看详细资料。

     

     

     

    注:本文仅为学习笔记、摘要。

    HTML参考手册:http://www.w3school.com.cn/tags/index.asp

  • 相关阅读:
    洛谷 P6622
    洛谷 P6619
    LOJ 3188
    CF::Gym 102174G
    eJOI2017~2019
    洛谷 P6313
    洛谷 P6305
    JSOI2020 酱油记
    洛谷 P6234
    CodeForces 1334F
  • 原文地址:https://www.cnblogs.com/lyonyang/p/6861332.html
Copyright © 2020-2023  润新知