• python-html基础操作


    介绍:

    HTML  是网页内容的载体。包括文字,图片,信息等用户浏览的信息
    CSS   样式是改变内容外观表现。像字体,颜色,背景,边框等
    JavaScript   是实现网页上的特效效果。如鼠标滑过背景颜色改变,鼠标滑过有弹出信息等

     html的基本格式:

    <!DOCTYPE html>
    <html>
        <head></head>
        <body></body>
    </html>

    注释:<!--注释的内容 -->

    head

    • meta   是自闭合的
      • 指定文件编码
        <meta charset='UTF=8'> 
        等同于 <meta http-equiv="content-type" content="text/html;charset=utf-8">
      • 刷新和跳转
        <meta http-equiv="Refresh" content="1"> # 1秒刷新一次页面
        <meta http-equiv="Refresh" content="5;url=http://www.baidu.com"> #5秒钟之后跳转到www.baidu.com
      • 关键字和描述
        <meta name="keywords" content="python,django,linux">
        <meta name="description" content="django是基于python开发的一款web框架">
      • ie搜索引擎
    • title  网页头部信息
      <title>第一个网页</title>
    • link
      • icon 
        <link rel="icon" sizes="192x192" href="https://docs.djangoproject.com/s/img/icon-touch.e4872c4da341.png">

      • stylesheet
        <link rel="stylesheet" href="newcss.css">  #导入css文件
        #newcss.css
        .abc{
            color:red;
            font-size: 20px;
        }
        #后面可以在body里面引用该css文件里面的样式:
            <div class="abc" >lalalalal</div>
    • style  在head里定义全局的css样式
          <style>
              .css1{
                  color: greenyellow;
                  font-size: 25px;
              }
          </style>
      #可以在body里面使用它
      <body>
          <div class="css1">test</div>

    body

    符号: 可参考 http://www.cnblogs.com/web-d/archive/2010/04/16/1713298.html

       常用符号:   >  (&gt;)   

                                <  (&lt; ) 

                                &  (&amp;)

                             空格  (&nbsp;)

    标签分为:块级标签,行内标签

    举个栗子:

    <body>
        <div style="background-color: wheat">Hello div</div>  #div是块级标签,独占一行
        <span style="background-color: wheat">Hello span</span>  #span标签是行内标签,非独占一行
    #为了效果明显这里加上一个背景色
    </body>
    Hello div

    Hello span

     可以通过chrome浏览器Fn+F12 ,用剪头指向内容判断是块级标签还是行内标签。

      ( 这里get了一个小技能,ctrl+shift+p 然后输入capture full size screenshoot可以截图整个页面的内容Hhhhh...)

    块级标签   默认独占一行

    常用块级标签:dhp

    • div 默认没有样式的一行。块级标签。如果想加样式需要结合css 
    • h1-h6  等同于字体格式标题
    •  p  段落,上下有行距
    • br   换行,自闭合
    • hr  加一条分割线 

    行内标签(行级标签)   默认不会独占一行

    常用行内标签:span,img,a,lable,input,form

    • span   默认没有样式的一块。行内标签。
    •  a  标签
      • 超链接
            <a href="home.html">home page</a>    #点击homepage 跳转到home.html
            <a href="https://docs.djangoproject.com">Django官网</a>   #点击Django官网,跳转到这个网址
            <br>    
            <a href="http://www.baidu.com" target="_blank">百度</a>   #点击百度,在新的标签页打开这个网址
      •  锚
            <a href="#m1">第一章</a>
            <br>
            <a href="#m2">第二章</a>  #点击第二章这个超链接就会跳到文章下文的第二章内容
            <br>
            <br>
            <div id="m1" style="height: 2000px;background-color: beige">第一章内容</div>
            <div id="m2" style="height: 2000px;background-color: pink">第二章内容</div>

        在html里面,每一个标签都能设置id,且id不可跟其他id重复,id唯一

    •  img标签    
      <img title="love django" src="1.png">   # src 导入图片; title 将鼠标放到图片上会显示这个字
      # src和title是img标签特有的属性
    •  select 标签
          <select>
              <option value="1">北京</option>
              <option value="2">上海</option>
              <option value="3">深圳</option>
              <option selected="selected">武汉</option>
          </select>
      #一般会给每个option设置一个value
      # option里面selected="selected" 表示默认选中下拉框里的
      View Code

        

          <select multiple="multiple" size="5">
              <option>北京</option>
              <option>上海</option>
              <option>深圳</option>
              <option selected="selected">武汉</option>
          </select>
      
      # size属性 下拉框里显示几个
      # multiple属性  一次可以选中多个
      View Code

        

          <select>
              <optgroup label="广东省">
                  <option>深圳</option>
                  <option>广州</option>
              </optgroup>
              <optgroup label="湖北省">
                  <option>武汉</option>
                  <option>黄石</option>
              </optgroup>
          </select>
      # optgroup不可选,将下面的option分组,再选择option
      View Code

        

    常用标签:

    • textarea  文本框 如果要将数据提交到form需要加name
          <textarea>默认内容哈哈哈</textarea>
    • input标签
      • text 文本框  
            <div>主机名:<input type="text" value="默认值哈哈"></div>  #value设置一个默认值
        主机名:
      • radio  单选框 
        <div>男:<input name="gender" type="radio"></div>
        <div>女:<input name="gender" type="radio"></div>
        #radio类型的,name相同的时候才会互斥,二选一
        #checked 默认选中一个
        男:
        女:
      • checkbox  复选框
            <div>湖北<input type="checkbox" checked="checked"></div>
            <div>广东<input type="checkbox"></div>
            <div>上海<input type="checkbox"></div>
        #checked="checked"默认选中
        湖北
        广东
        上海
      • file  上传文件 (如果需要提交到后台,需要特殊的设置)
        如果想要提交文件到后台,需要在其所在的form标签添加
            <form action="" enctype="multipart/form-data" method="post">
          <input type="file" name="user"> </form>
      • password 密码框
        密码:
      • submit  提交数据到后台 

    Form表单  提交数据

     提交到form表单里的 可以是selected,input,textarea标签里的数据

        action参数:规定当提交表单时向何处发送表单数据。

    select:

         <form action="http://127.0.0.1:8000/formapp/index/">
            <select name="city">  #这里的name相当于字典的key
                    <option value="111">深圳</option>   #value是给key取名
                    <option value="222">广州</option>
                    <option value="333">惠州</option>
            </select>
            <input type="submit" value="提交">
        </form>
    
    django,views.py配置:
    def index(request):
        print("POST:",request.POST)
        print("GET:",request.GET)
        return HttpResponse('ok')
    #点击提交按钮之后,查看:
    POST: <QueryDict: {}>
    GET: <QueryDict: {'city': ['111', '222', '333']}>
    "GET /formapp/index/?city=111&city=222&city=333  HTTP/1.1" 200 2
    如果没有设置value值:

    "GET /formapp/index/?city=%E6%B7%B1%E5%9C%B3&city=%E5%B9%BF%E5%B7%9E&city=%E6%83%A0%E5%B7%9E HTTP/1.1" 20

    0 2

    input-text类型:

    <form action="http://www.baidu.com">  #action指定提交的位置,把数据提交到百度
        <div>主机名:<input name="host" type="text" value="127.0.0.1"></div>   #value设置一个默认值  
        <div>端口:<input name="port" type="text"></div>  #必须指定name,提交数据到后台,是以字典的形式,name就是key
        <div>密码:<input name="password" type="password"></div>
        <input type="submit" value="提交">  #提交按钮
    </form>
    主机名:
    端口:
    密码:

     input-radio类型:

            <h1>性别</h1>
            <label for="boy">男:</label>#lable标签
            <input name="gender" type="radio" id="boy" value="0"> #name="gender"是key,value是值
            <label for="girl">女:</label>
            <input name="gender" type="radio" id="girl" value="1">
            <input type="submit" value="提交">

    input-checkbox类型:

        <form action="http://127.0.0.1:8000/formapp/index/" >
             <label>
                篮球<input name="favor" type="checkbox" value="1">
                足球<input name="favor" type="checkbox" value="2">
                羽毛球<input name="favor" type="checkbox" value="3">
            </label>
            <input type="submit" value="提交">
        </form>

    input-file类型: (需要加上 enctype="multipart/form-data" method="post")

        <form action="http://127.0.0.1:8000/formapp/index/" enctype="multipart/form-data" method="post">
            <input type="file" name="upload_file">
            <input type="submit" value="提交">
        </form>
    测试django,views.py
    def index(request):
        print("FILE:",request.FILES)
        print("POST:",request.POST)
        print("GET:",request.GET)
    结果:
    FILE: <MultiValueDict: {'upload_file': [<InMemoryUploadedFile: test.txt (application/octet-stream)>]}>
    POST: <QueryDict: {}>
    GET: <QueryDict: {}>
    [03/Jan/2019 15:58:09] "POST /formapp/index/ HTTP/1.1" 200 2

    lable标签  点击关键字,会自动选中对应的框

        <label>
            姓名:<input type="text">
        </label>
        <label for="hunfou">婚否:</label>   #for参数的值等于id的值
        <input id="hunfou" type="checkbox">   

     例二:

        <input id="radioA" type="radio" name="agree" value="1" checked="checked">
        <label for="radioA">我同意</label>
        <input id="radioB" type="radio" name="agree" value="0">
        <label for="radioB">我不同意</label>

    Table 表格 

    tr 代表行   td列(必须包含在tr行里面)

        <table border="2">  # border加边框的
            <thead>  #表头
                <tr>    #
                    <th>姓名</th>  #头部里的列,th
                    <th>年龄</th>
                    <th>性别</th>
                </tr>
            </thead>
            <tbody>    #表内容
                <tr>
                    <td>张一</td>
                    <td>28</td>
                    <td>男</td>
                </tr>
                <tr>
                    <td>张二</td>
                    <td>20</td>
                    <td>女</td>
                </tr>
            </tbody>
        </table>
    table表
    姓名年龄性别
    张一 28
    张二 20

    ul  ol  dl  li  列表相关

        <ul>
            <li>111</li>   #li列表
            <li>222</li>
        </ul>
        <ol>
            <li>abc</li>
            <li>def</li>
        </ol>
        <dl>
            <dt>dt标题一</dt>
            <dd>内容一</dd>
            <dd>内容二</dd>
            <dt>dt标题二</dt>
            <dd>dd内容一</dd>
            <dd>内容二</dd>
        </dl>
    View Code
    • 111
    • 222
    1. abc
    2. def
    dt标题一
    内容一
    内容二
    dt标题二
    dd内容一
    内容二

    fieldset  就是下面这个框框

        <fieldset>   
            <legend>内容</legend>  #框框上的字
            <div>段落1:</div>
            <div>段落2:</div>
        </fieldset>
    View Code
    内容
    段落1:
    段落2:

     

  • 相关阅读:
    deleted
    deleted
    HDU
    FZU 1901 Period II(KMP中的next)题解
    HDU 3374 String Problem(最大最小表示+KMP)题解
    HDU 4300 Clairewd’s message(扩展KMP)题解
    POJ 2923 Relocation(状压DP+01背包)题解
    HDU 4272 LianLianKan (状压DP+DFS)题解
    POJ 1185 炮兵阵地(状压DP)题解
    POJ
  • 原文地址:https://www.cnblogs.com/xiaobaozi-95/p/10192317.html
Copyright © 2020-2023  润新知