html+css总结

前端基础:
    HTML --->标签
    CSS  --->选择器,属性
    JavaScript --->基础语法,BOM&DOM

编程的意义:
    使用数据,存储数据 处理数据
web本质:
    服务端socket和 浏览器socket 连接

import socket


sk = socket.socket()

sk.bind(("127.0.0.1", 8080))
sk.listen(5)


while True:
    #等待客户连接
    conn, addr = sk.accept()
    #接受客户发来的消息
    data = conn.recv(8096)
    #按照http协议给客户端回消息
    conn.send(b"HTTP/1.1 200 OK\r\n\r\n")
    conn.send(b"<h1>Hello world!</h1>")
    conn.close()

浏览器发请求 --> HTTP协议 --> 服务端接收请求 --> 服务端返回响应 --> 服务端把HTML文件内容发给浏览器 --> 浏览器渲染页面


HTML是什么?

       • 超文本标记语言(Hypertext Markup Language, HTML)是一种用于创建网页的标记语言

  • 本质上是浏览器可识别的规则,我们按照规则写网页,浏览器根据规则渲染我们的网页。对于不同的浏览器,对同一个标签可能会有不同的解释。(兼容性问题)
  • 网页文件的扩展名:.html或.htm
  • 基本格式<标记符></标记符>

        通俗的来说,HTML -->是一个规定规定了大家怎么写页面

html不是什么?
         它不是一种编程语言,它并没有任何逻辑可言.     它就是使用标签来描述页面的
         <标签名>  --->标记语言
html相关术语?

  标记:  是用尖括号<>包围的单词,很多标记是一对的,一个开始,一个结束标记(单词前加/)

  元素:每对尖括号包围的部分  --->比如<body></body>包围的部分就叫做body元素

    每个元素有三部分组成开始标记(标签)   内容   结束标记.    
HTML文件结构:

<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title>css样式优先级</title>
</head>
<body>

</body>
</html>

 


    <!DOCTYPE html>声明为HTML5文档。
    <html>、</html>是文档的开始标记和结束的标记。是HTML页面的根元素,在它们之间是文档的头部(head)和主体(body)。
    <head>、</head>定义了HTML文档的开头部分。它们之间的内容不会在浏览器的文档窗口显示。包含了文档的元(meta)数据。
    <title>、</title>定义了网页标题,在浏览器标题栏显示。
    <body>、</body>之间的文本是可见的网页主体内容。


head内常用标签:
    <title></title>          定义网页标题
    <style></style>      定义内部样式表
    <script></script>    定义JS代码或引入外部JS文件
    <link/>                    引入外部样式表文件
    <meta/>                  定义网页原信息
    Meta标签介绍:
        <meta>元素可提供有关页面的元信息(mata-information),针对搜索引擎和更新频度的描述和关键词。
        <meta>标签位于文档的头部,不包含任何内容。
        <meta>提供的信息是用户不可见的。
        <meta>介绍
            1.http-equiv属性:相当于http的文件头作用,它可以向浏览器传回一些有用的信息,以帮助正确地显示网页内容,与之对应的属性值为content,content中的内容其实就是各个参数的变量值。
            <!--2秒后跳转到对应的网址,注意引号-->
            <meta http-equiv="refresh" content="2;URL=https://www.ykgege.com">
            <!--指定文档的编码类型-->
            <meta http-equiv="content-Type" charset=UTF8">
            <!--告诉IE以最高级模式渲染文档-->
            <meta http-equiv="x-ua-compatible" content="IE=edge">
            2.name属性: 主要用于描述网页,与之对应的属性值为content,content中的内容主要是便于搜索引擎机器人查找信息和分类信息用的。
            <meta name="keywords" content="meta总结,html meta,meta属性,meta跳转">
            <meta name="description" content="老男孩教育Python学院">

body内常用标签

基本标签(块级标签和内联标签)

<b>加粗</b>
<i>斜体</i>
<u>下划线</u>
<s>删除</s>

<p>段落标签</p>

<h1>标题1</h1>
<h2>标题2</h2>
<h3>标题3</h3>
<h4>标题4</h4>
<h5>标题5</h5>
<h6>标题6</h6>

<!--换行-->
<br>

<!--水平线--><hr>

 


特殊字符:
    空格    &nbsp;
    >        &gt;
    <        &lt;
    &        &amp;
    ¥        &yen;
    版权    &copy;
    注册    &reg;

主要标签介绍:
    div标签用来定义一个块级元素,并无实际的意义。主要通过CSS样式为其赋予不同的表现。
    span标签用来定义内联(行内)元素,并无实际的意义。主要通过CSS样式为其赋予不同的表现。

    块级元素与行内元素的区别:
    所谓块元素,是以另起一行开始渲染的元素,行内元素则不需另起一行。如果单独在网页中插入这两个元素,不会对页面产生任何的影响。
    这两个元素是专门为定义CSS样式而生的。
    注意:
        关于标签嵌套:通常块级元素可以包含内联元素或某些块级元素,但内联元素不能包含块级元素,它只能包含其它内联元素。
    img
        <img src="图片的路径" alt="图片未加载成功时的提示" title="鼠标悬浮时提示信息" width="宽" height="高(宽高两个属性只用一个会自动等比缩放)">
    a(超链接标签)所谓的超链接是指从一个网页指向一个目标的连接关系,这个目标可以是另一个网页,也可以是相同网页上的不同位置,还可以是一个图片,一个电子邮件地址,一个文件,甚至是一个应用程序。
        什么是URL?
            URL是统一资源定位器(Uniform Resource Locator)的缩写,也被称为网页地址,是因特网上标准的资源的地址。
            URL举例
            http://www.sohu.com/stu/intro.html
            http://222.172.123.33/stu/intro.html
            URL地址由4部分组成
            第1部分:为协议:http://、ftp://等
            第2部分:为站点地址:可以是域名或IP地址
            第3部分:为页面在站点中的目录:stu
            第4部分:为页面名称,例如 index.html
            各部分之间用“/”符号隔开。
        <a href="http://www.oldboyedu.com" target="_blank" >点我</a>
        href属性指定目标网页地址。该地址可以有几种类型:
            绝对URL - 指向另一个站点(比如 href="http://www.jd.com)
            相对URL - 指当前站点中确切的路径(href="index.htm")
            锚URL - 指向页面中的锚(href="#top")
        target:
            _blank表示在新标签页中打开目标网页
            _self表示在当前标签页中打开目标网页

列表

     1.无序列表

<ul type="disc">
  <li>第一项</li>
  <li>第二项</li>
</ul>

type属性:

  • disc(实心圆点,默认值)
  • circle(空心圆圈)
  • square(实心方块)
  • none(无样式)

     2.有序列表

<ol type="1" start="2">
  <li>第一项</li>
  <li>第二项</li>
</ol>

type属性:

  • 1 数字列表,默认值
  • A 大写字母
  • a 小写字母
  • Ⅰ大写罗马
  • ⅰ小写罗马

    3.列表标题

<dl>
  <dt>标题1</dt>
  <dd>内容1</dd>
  <dt>标题2</dt>
  <dd>内容1</dd>
  <dd>内容2</dd>
</dl>

 


表格
    解释:表格是一个二维数据空间,一个表格由若干行组成,一个行又有若干单元格组成,单元格里可以包含文字、列表、图案、表单、数字符号、预置文本和其它的表格等内容。表格最重要的目的是显示表格类数据。表格类数据是指最适合组织为表格格式(即按行和列组织)的数据。

    <table>
        <thead>
            <tr>
                <th></th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td></td>
            </tr>
        </tbody>
    </table>

 


    属性:
        border: 表格边框.
        cellpadding: 内边距
        cellspacing: 外边距.
        width: 像素 百分比.(最好通过css来设置长宽)
        rowspan: 单元格竖跨多少行
        colspan: 单元格横跨多少列(即合并单元格)

表单:
    功能:
        表单用于向服务器传输数据,从而实现用户与Web服务器的交互
        表单能够包含input系列标签,比如文本字段、复选框、单选框、提交按钮等等。
        表单还可以包含textarea、select、fieldset和 label标签。
    属性:
        accept-charset      规定在被提交表单中使用的字符集(默认:页面字符集)。
        action                    规定向何处提交表单的地址(URL)(提交页面)。
        autocomplete        规定浏览器应该自动完成表单(默认:开启)。
        enctype                 规定被提交数据的编码(默认:url-encoded)。
        method                  规定在提交表单时所用的 HTTP 方法(默认:GET)。
        name                    规定识别表单的名称(对于 DOM 使用:document.forms.name)。
        novalidate             规定浏览器不验证表单。
        target                    规定 action 属性中地址的目标(默认:_self)。
    基本概念:
        HTML表单是HTML元素中较为复杂的部分,表单往往和脚本、动态页面、数据处理等功能相结合,因此它是制作动态网站很重要的内容。
        表单一般用来收集用户的输入信息
        表单工作原理:
        访问者在浏览有表单的网页时,可填写必需的信息,然后按某个按钮提交。这些信息通过Internet传送到服务器上。
        服务器上专门的程序对这些数据进行处理,如果有错误会返回错误信息,并要求纠正错误。当数据完整无误后,服务器反馈一个输入完成的信息。
    input:
        属性值                  表现形式                                    对应代码
        text                       单行输入文本                          <input type=text" />
        password             密码输入框                             <input type="password"  />
        date                     日期输入框                              <input type="date" />
        checkbox             复选框                                    <input type="checkbox" checked="checked"  />
        radio                     单选框                                    <input type="radio"  />
        submit                 提交按钮                                  <input type="submit" value="提交" />
        reset                    重置按钮                                  <input type="reset" value="重置"  />
        button                  普通按钮                                  <input type="button" value="普通按钮"  />
        hidden               隐藏输入框                                 <input type="hidden"  />
        file                    文本选择框                                  <input type="file"  />
 

属性说明:

  • name:表单提交时的“键”,注意和id的区别
  • value:表单提交时对应项的值
    • type="button", "reset", "submit"时,为按钮上显示的文本年内容
    • type="text","password","hidden"时,为输入框的初始值
    • type="checkbox", "radio", "file",为输入相关联的值
  • checked:radio和checkbox默认被选中的项
  • readonly:text和password设置只读
  • disabled:所有input均适用

   

 

 

 

select

<form action="" method="post">
  <select name="city" id="city">
    <option value="1">北京</option>
    <option selected="selected" value="2">上海</option>
    <option value="3">广州</option>
    <option value="4">深圳</option>
  </select>
</form>

属性说明:

  • multiple:布尔属性,设置后为多选,否则默认单选
  • disabled:禁用
  • selected:默认选中该项
  • value:定义提交时的选项值

 

 label

定义:<label> 标签为 input 元素定义标注(标记)。
说明:

    1. label 元素不会向用户呈现任何特殊效果。
    2. <label> 标签的 for 属性值应当与相关元素的 id 属性值相同。
<form action="">
  <label for="username">用户名</label>
  <input type="text" id="username" name="username">
</form>

 


    textarea(多行文本)

<textarea name="memo" id="memo" cols="30" rows="10">
  默认内容
</textarea>

属性说明:

  • name:名称
  • rows:行数
  • cols:列数
  • disabled:禁用



CSS

css介绍

  CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素。

  当浏览器读到一个样式表,它就会按照这个样式表来对文档进行格式化(渲染)。

css的几种引入方式

行内式

  行内式是在标记的style属性中设定CSS样式。不推荐大规模使用。

<p style="color: red">Hello world.</p>

内部式

  嵌入式是将CSS样式集中写在网页的<head></head>标签对的<style></style>标签对中。格式如下:

<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        p{
            background-color: #2b99ff;
        }
    </style>
</head>

 


    每个CSS样式由两个组成部分:选择器和声明。声明又包括属性和属性值。每个声明之后用分号结束。
    选择器
        元素选择器  p {color: "red";}
        ID选择器    #i1 { background-color: red; }
        类选择器    .c1 { font-size: 14px; }p.c1 {color: red;}
        通用选择器  *

   组合选择器

/*后代选择器*/
/*li内部的a标签设置字体颜色*/
li a {
  color: green;
}
/*儿子选择器*/
/*选择所有父级是 <div> 元素的 <p> 元素*/
div>p {
  font-family: "Arial Black", arial-black, cursive;
}
/*邻居选择器*/
/*选择所有紧接着<div>元素之后的<p>元素*/
div+p {
  margin: 5px;
}
/*弟弟选择器*/
/*i1后面所有的兄弟p标签*/
#i1~p {
  border: 2px solid royalblue;
}

 


     
        属性选择器  p[title="213"]  用于选取带有指定属性和值的元素
    属性相关
        font-family可以把多个字体名称作为一个“回退”系统来保存。如果浏览器不支持第一个字体,则会尝试下一个。浏览器会使用它可识别的第一个值。
        font-weight用来设置字体的字重(粗细)。
            normal    默认值,标准粗细
            bold    粗体
            bolder    更粗
            lighter    更细
            100~900    设置具体粗细,400等同于normal,而700等同于bold
            inherit    继承父元素字体的粗细值
        text-align 属性规定元素中的文本的水平对齐方式。
            left    左边对齐 默认值
            right    右对齐
            center    居中对齐
            justify    两端对齐
        text-decoration 属性用来给文字添加特殊效果。
            none    默认。定义标准的文本。
            underline    定义文本下的一条线。
            overline    定义文本上的一条线。
            line-through    定义穿过文本下的一条线。
            inherit    继承父元素的text-decoration属性的值。
        display
            display:"none"    HTML文档中元素存在,但是在浏览器中不显示。一般用于配合JavaScript代码使用。
            display:"block"    默认占满整个页面宽度,如果设置了指定宽度,则会用margin填充剩下的部分。
            display:"inline"    按行内元素显示,此时再设置元素的width、height、margin-top、margin-bottom和float属性都不会有什么影响。
            display:"inline-block"    使元素同时具有行内元素和块级元素的特点。

            display:"none"与visibility:hidden的区别:
                visibility:hidden: 可以隐藏某个元素,但隐藏的元素仍需占用与未隐藏之前一样的空间。也就是说,该元素虽然被隐藏了,但仍然会影响布局。
                display:none: 可以隐藏某个元素,且隐藏的元素不会占用任何空间。也就是说,该元素不但被隐藏了,而且该元素原本占用的空间也会从页面布局中消失。
        float
            浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。
            由于浮动框不在文档的普通流中,所以文档的普通流中的块框表现得就像浮动框不存在一样。
        clear
            content: "";
            display: block;
            clear: both;
        overflow
            visible    默认值。内容不会被修剪,会呈现在元素框之外。
            hidden    内容会被修剪,并且其余内容是不可见的。
            scroll    内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
            auto    如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
            inherit    规定应该从父元素继承 overflow 属性的值。
        position
            1.static 默认值,无定位,不能当作绝对定位的参照物,并且设置标签对象的left、top等值是不起作用的的
            2.relative相对定位是相对于该元素在文档流中的原始位置,即以自己原始位置为参照物。有趣的是,即使设定了元素的相对定位以及偏移值,元素还占有着原来的位置,即占据文档流空间。对象遵循正常文档流,但将依据top,right,bottom,left等属性在正常文档流中偏移位置。而其层叠通过z-index属性定义。
            3.absolute定义:设置为绝对定位的元素框从文档流完全删除,并相对于最近的已定位祖先元素定位,如果元素没有已定位的祖先元素,那么它的位置相对于最初的包含块(即body元素)。元素原先在正常文档流中所占的空间会关闭,就好像该元素原来不存在一样。元素定位后生成一个块级框,而不论原来它在正常流中生成何种类型的框。重点:如果父级设置了position属性,例如position:relative;,那么子元素就会以父级的左上角为原始点进行定位。这样能很好的解决自适应网站的标签偏离问题,即父级为自适应的,那我子元素就设置position:absolute;父元素设置position:relative;,然后Top、Right、Bottom、Left用百分比宽度表示。另外,对象脱离正常文档流,使用top,right,bottom,left等属性进行绝对定位。而其层叠通过z-index属性定义。
            4.fixedfixed:对象脱离正常文档流,使用top,right,bottom,left等属性以窗口为参考点进行定位,当出现滚动条时,对象不会随着滚动。而其层叠通过z-index属性 定义。 注意点: 一个元素若设置了 position:absolute | fixed; 则该元素就不能设置float。这 是一个常识性的知识点,因为这是两个不同的流,一个是浮动流,另一个是“定位流”。但是 relative 却可以。因为它原本所占的空间仍然占据文档流。
            定位:
                1.默认的static
                2.相对定位(相对于原来的位置来说)
                3.绝对定位(相对于最近的一个被定位的祖宗标签)
        z-index
            设置对象的层叠顺序,数值大的会覆盖在数值小的标签之上。z-index 仅能在定位元素上奏效。
        opacity
            用来定义透明效果。取值范围是0~1,0是完全透明,1是完全不透明。

                                                                                                                                                 由于是刚开始写,所以内容有很多不足,基本上(都是)借鉴大神的博客写的,暂时仅供自己阅读,以后会慢慢加以改正

posted @ 2018-10-19 10:34  crcr7  阅读(199)  评论(0)    收藏  举报