• Web开发学习笔记(日更)


    1、h1 h2 h3 ... h6 对应六个标题
    2、开头加<!DOCTYPE html> 是html 5 的定义
    3、所有内容都在<html> 内, 里面有head和body
    4、<p> 定义段落,在文字后加东西,就是加在后面,而对段落加东西会另起一行, 换行的东西跟前面有行间距
    5、超链接,用a标签,里面href参数=地址,中间的内容是带上这个超链接的
    6、<img> 里面放参数src是地址
    7、<br>换行无间距,而段落的换行有间距
    8、属性以键值对的方式出现,比如
       <a>的href:标签获得超链接
          的target:规定在何处打开链接
                _blank  在新的页面打开网页
                _self   覆盖当前页面
       <h1>的align对齐方式
             right
             left
             center
             
       <body>的bgcolor背景颜色
       通用:
            class:规定元素类名
            id:规定元素唯一ID
            style:规定元素样式
                type = text/css 引入css样式
             title:规定元素额外信息
                   放在head里,文字就是网页标题
            
    9、格式化
       定义***的字
       b       粗体文本
       big     大号字
       em      着重字体
       i       斜体
       small   小号字
       strong  加重语气
       sub     下标字
       sup     上标字
       ins     插入字(有下划线)
       del     删除字(有删除线)
    10、HTML样式
          标签
             <style> 样式定义
             <link> 资源引用
          属性
             rel = "stylesheet": 外部样式表
             type = "text/css": 引入文档的类型
             margin-left: 边距
          样式插入方法
             1、外部样式表
                <link rel = "stylesheet" type = "text/css" href = "mystyle.css">  自己写一个文件mystyle.css
             2、内部样式表
                <style type = "text/css">
                   body {
                      background-color: red
                   },
                   p {
                      margin-left: 20px
                   }
                </style> 对...标签加入...样式
             3、内联样式表
                <p style = "color":red> 只修改当前的,原地修改
    11、html链接
          1、链接数据
                文本链接
                图片链接
          2、属性
             href属性   指向另一个文档的链接 标签里的所有东西包括图片都会获得超链接
             name属性   创建文档内的链接 当前页面内的链接
                   <a name = "fuck"> abc </a>
                   <a href = "#fuck"> 跳转到fuck </a>
                   点击跳转到fuck,我们就会跳转到abc所在的位置,(某些网站回到顶部同理)
          3、img标签属性
             alt        替换文本属性 (比如我打错了一个图片的名字,就会显示不出来那个图片,相应位置会出现alt设置的内容)
             width      宽   px(像素)
             height     高   px
    12、html表格
          <table>       定义表格
                border = 1         定义边框厚度
                cellpadding = 10   每个单元格放大多少
                cellspacing = 10   相邻单元格的间距(不改变单元格本身大小)
                background =       颜色/图片文件
          <caption>     定义表格的标题
          <th>          定义表格的表头
                <tr>
                   <th>222</th>
                   <th>222</th>
                   <th>222</th>
                </tr>
          <tr>          定义表格的行
          <td>          定义表格的单元
                空单元格:里面不写内容
          <thead>       定义表格的页眉
          <tbody>       定义表格的主体
          <tfoot>       定义表格的页脚
          <col>         定义表格的列属性
          <ul>          表格内的列表
                里面的每一项通过<li>来定义
                EX
                   <tr>
                      <td>
                         <ul>
                            <li>pg</li>
                            <li>pc</li>
                            <li>cg</li>
                         </ul>
                      </td>
                   </tr>


                EX
                   <table>
                      <tr>
                         <td>单元格1-1</td>
                         <td>单元格1-2</td>
                         <td>单元格1-3</td>
                      </tr>
                      <tr>
                         <td>单元格2-1</td>
                         <td>单元格2-2</td>
                         <td>单元格2-3</td>
                      </tr>
                  </table>
    13、html列表
          <ol>   有序列表,列表标着123
          <ul>   无序列表,每行前面是一个点
          <li>   列表项
          <dl>   列表
          <dt>   列表项
          <dd>   描述
          1.无序列表
                标签 <ul> <li>
                属性 type = "disc" / "circle" / "square" 前面小圆点的样式
          2.有序列表
                标签 <ol> <li>
                属性 A a L l start
                      前面数字的样式
                      A --> ABCD
                      a --> abcd
                      I --> I II III IV
                      i --> i ii iii iv
                      start 从几开始
          3.嵌套列表
                标签 <ul> <ol> <li>
                无序列表嵌套:
                      <ul>
                         <li>人类</li>
                            <ul>
                               <li>中国人</li>
                               <li>英国人</li>
                            </ul>
                      </ul>
          4.自定义列表
                标签 <dl> <dt> <dd>
                dl 等价于ul ol,不过没有前面的数字或点点
                dt 为dl里的每一个列表项
                dd 为dt的一个描述,在dt的下面会+tab显示出来
                <dl>
                   <dt>helloworld</dt>
                      <dd>abc</dd>
                   <dt>helloworld</dt>
                      <dd>abc</dd>
                   <dt>helloworld</dt>
                      <dd>abc</dd>
                </dl>
                效果:
                   helloworld
                      abc
                   helloworld
                      abc
                   helloworld
                      abc
    14、html块
          1.html块元素
                块元素在显示时,通常会以新行开始
                ex: <h1> <p> <ul>
          2.html内联元素
                内联元素通常不会以新行开始
                ex: <b> <a> <img>
          3.html<div>元素
                <div>元素也被称为块元素,其主要是组合html元素的容器
                      正常情况加不加没啥区别,主要与css结合
                      需要定义一个id属性,从而在css里编辑
                      PS: 用CSS需要在head里引入
                            <link rel="stylesheet" type="text/css" href="ls.css">
                         CSS样式书写时
                         #加id名加大括号
                         如果id名后加p,那么html里只会对p标签产生影响
          4.html<span>元素
                <span>元素是内联元素,可作为文本的容器
                在head里也可以自定义样式
                   <style type = "text/css">
                      span{
                      }
                   </style>
    15、html布局
          见代码1.html
    16、html表单
          1.表单
                获取不同类型的用户输入
                <form>        表单
                      所有的表单类型都套在里面
                <input>       输入域
                      <form>
                         用户名:
                         <input type="text">
                         <br/>
                         密码:
                         <input type="password">
                         <br/>


                         你喜欢的水果有?(多选,checkbox是复选框)
                         <br/>
                         苹果<input type="checkbox">
                         西红柿<input type="checkbox">
                         香蕉<input type="checkbox">
                         <br/>


                         请选择您的性别?(单选)
                         <br/>
                         男<input type="radio" name="sex">
                         女<input type="radio" name="sex">
                         (radio是单选框,加name的目的是相同name的是一组)


                         <input type = "button" value = "按钮">
                         <input type = "submit" value = "确定">
                         (两种类型的按钮)
                      </form>
                <textarea>    文本域
                      可以独立于form之外
                      <textarea cols = "30" rows = "30">填写个人信息</textarea>
                      (cols和rows分别设置框内文字几列几行,框内初始内容为填写个人信息)
                <label>       控制标签
                <fieldset>    定义域
                <legend>      域的标题
                <select>      选择列表
                      <form>
                         请选择你的城市
                         <select>
                            <option>北京</option>
                            <option>河北</option>
                            <option>河南</option>
                            <option>陕西</option>
                         </select>
                      </form>
                <optgroup>    选项组
                <option>      下拉列表中的选项
                <button>      按钮
    17、html框架(套娃: 页面的嵌套,可以将一个页面缩小植入当前页面里成为独立页面)
             1.框架标签frame
             2.框架集标签framset
                   定义如何将窗口分割为框架
                   每一个frameset定义一系列行or列
                   rows 和 cols规定了每行或每列占据屏幕的面积
                   EX: 写三个html,在body定义颜色
                   <frameset cols = "20%, 50%, 30%">
                      <frame src = "1.html></frame>
                      <frame src = "2.html></frame>
                      <frame src = "3.html></frame>
                   </frameset>
             3.常用标签
                   noresize 固定框架大小
             4.内联框架
                   iframe(没过时)
                   EX:
                         <iframe src = "1.html" frameborder = "0" width = "400px" height = "400px">
                         (可以自己设定大小,并且可以通过frameborder调整当前frame的边框厚度)
                         </iframe>
                   如果A包含B, B包含C, C包含D
                   D内超链接target = _self    在D中打开网页
                                    _parent  在C中打开网页
                                    _blank   空白页打开
             (前两个已经out)
    18、html背景
          1.背景标签
                background = "***.jpg"
          2.背景颜色
                bgcolor = "#66ccff"
          3.颜色
                十六进制颜色码
    19、html实体
          1.实体
              <   >  & 等等无法直接展示
              有专门的代码代替-->实体
              <        &lt;
              >        &gt;
              等等
              链接:https://baike.baidu.com/item/HTML%E5%AE%9E%E4%BD%93/9172201?fr=aladdin
    20、html5新增元素
             section  内容块,可与h1...h6结合使用 (有标题的独立文章)
             article  与上下文不相关的独立内容,ex博客的一篇文章
                      <!DOCTYPE html>
                      <html>
                         <head>
                            <title>Article Introduction</title>
                         </head>
                         <body>
                            <article>
                                  <header>
                                     <h1>olinr的博客</h1>
                                     <p>欢迎光临</p>
                                  </header>
                                  <article>
                                     <header>作者</header>
                                     <p>评论</p>
                                     <footer>time</footer>
                                  </article>
                                  <footer>
                                     <p>底部</p>
                                  </footer>
                            </article>
                         </body>
                      </html>
             aside    与article相关的,辅助信息
             header   通常表示标题
             hgroup   对整个页面的内容块的标题进行结合
             footer   通常承载作者姓名,日期etc
             nav      页面中导航链接的部分
                      传统导航条
                      侧边栏导航
                      页内导航
                      翻页操作

             figure   一段独立的内容,一般表示主体  内容的一个独立单元
             video    定义视频元素
             audio    定义音频元素
             canvas   提供画布
             input元素类型
                   email  url  number  range DatePickers
    21、html5新增全局属性
             全局属性: 所有标签都能用
             contentEditable   允许用户编辑元素中的内容,(必须是可以获得鼠标焦点的元素),点击后有插入符号, true false
             designMode        整个页面是否可编辑(只要是能获得鼠标焦点的元素),都能编辑or不能编辑 on off
             hidden            所有元素都能用,使浏览器无法渲染该元素,使其处于不可见状态,但是元素中的内容还是浏览器创建的,可以使用js脚本取消该状态,是bool类型 true and false
             spellcheck        用户输入的拼写检查 true or false
             tabindex          =n 即在页面中,按n次tab才能将焦点锁定到这个元素上 =-1 不能获取到焦点
    22、一些属性
             required = "required"   用户输入内容不能是空白
             <label for = "123">     是给id为123的元素的标签
             maxlength               可以规定input位数
             datalist                有下拉框,也支持自己输入,见3.html
             <form action = "file.html"> 表单内的submit可以打开本地网页
             <input type = "checkbox" indeterminate> 复选框可以有第三个选选项(不确定是否选择)


     1 <!DOCTYPE html>
     2 <html>
     3     <head lang="en">
     4         <meta charset="UTF-8">
     5         <title>布局</title>
     6         <style type="text/css">
     7             body {
     8                 margin: 0px;
     9                 /* 页边距为0 */
    10             }
    11             #container {
    12                 width: 100%;
    13                 height: 950px;
    14                 background-color: darkgray;  
    15                 /* 宽*高的部分都为container的范围,并设置了背景颜色 */ 
    16             }
    17             #heading {
    18                 width: 100%;
    19                 height: 10%;
    20                 background-color: aqua;
    21             }
    22             #content_menu {
    23                 width: 30%;
    24                 height: 80%;
    25                 background-color: aquamarine;
    26                 float: left;
    27                 /* 定义可以从左往右排的方式,相同类型的如果能放一排就一排了(从左往右) */
    28             }
    29             #content_body {
    30                 width: 70%;
    31                 height: 80%;
    32                 background-color: blueviolet;
    33                 float: left;
    34             }
    35             div#footing {
    36                 width: 100%;
    37                 height: 10%;
    38                 background-color: black;
    39                 clear: both;
    40             }
    41 
    42         </style>
    43     </head>
    44     <body>
    45         <div id="container">
    46             <div id="heading">头部</div>
    47             <div id="content_menu">内容菜单</div>
    48             <div id="content_body">内容主体</div>
    49             <div id="footing">底部</div>
    50         </div>
    51     </body>
    52 </html>
    1.html
     1 <!DOCTYPE html>
     2 <html lang="en">
     3     <meta type="UTF-8">
     4     <head>
     5         <title>table布局</title>
     6     </head>
     7     <body marginheight="0px" marginwidth="0px">   <!--上下/左右页边距-->
     8         <table width="100%" height="950px" style="background-color: darkgray">
     9             <tr>
    10                 <td colspan="3" width="100%" height="10%" style="background-color: aqua;">
    11                     <!--colspan向右合并几个单元格-->
    12                     这是头部
    13                 </td>
    14             </tr>
    15             <tr>
    16                 <td width="20%" height="80%" style="background-color: blue;">
    17                     <ul>
    18                         <li>ios</li>
    19                         <li>android</li>
    20                         <li>html5</li>
    21                     </ul>
    22                 </td>
    23                 <td width="60%" height="80%" style="background-color: blueviolet;">内容主体</td>
    24                 <td width="20%" height="80%" style="background-color: deeppink;">右菜单</td>
    25             </tr>
    26             <tr>
    27                 <td width="100%" height="10%" colspan="3" style="background-color: darkcyan;">
    28                     这是底部
    29                 </td>
    30             </tr>
    31         </table>
    32     </body>
    33 
    34 </html>
    2.html
     1 <!DOCTYPE html>
     2 <html lang = "en">
     3     <head>
     4         <meta charset = "UTF-8">
     5         <title></title>
     6     </head>
     7     <body>
     8         <form>
     9             <input type = "text" list = "abcd">
    10                 <datalist id = "abcd" style = "display: none;">
    11                     <option value = "124"></option>
    12                     <option value = "455"></option>
    13                     <option value = "789"></option>
    14                     <option value = "456"></option>
    15                 </datalist>
    16         </form>
    17     </body>
    18 </html>
    3.html

     CSS
    1、语法
          元素, 元素, 元素, 元素 {
             属性: 值;
             属性: 值;
             属性: 值;
             属性: 值;
          }
          若值的单词大于1个(有空格)要加引号
          可以有多个样式,选择最里面的(优先级)
             比如<body><p></p></body> 若p有样式,则用p的,否则用body的
    2、一些设置
          font-size: 50px             设置字体大小
    3、CSS派生选择器
          通过依据元素在其位置的上下文关系来定义样式
          格式
          元素1 元素2(注意是空格分隔, 可以有更多的元素){
             样式
          }
          意为元素1里的元素2会采用此样式,没有元素1套着的元素2不会采用此样式
          如果单独定义了元素2,又定义了元素1下的元素2,那么谁更具体显示谁,即满足嵌套关系就用嵌套关系的样式
    4、CSSid选择器
          为标了id的元素进行指定的定义样式
          id选择器以#定义
          # + id名称 {
             样式
          }
          对带有特定id的元素定义样式,也可以使用派生选择器
    5、类选择器
          类似id选择器
          除了定义不同.+class名
          其它一样
          PS: id每个元素唯一,class可以多个元素用一个
    6、属性选择器
          [属性] {
             样式
          }
          具有这个属性的标签获得此样式
    7、属性和值选择器
          [属性=值] {
             样式
          }
          只有具有这个属性,并且该属性的值一样的标签才获得此样式
    8、CSS背景
          background-attachment       背景图片是否固定或随着页面的其余部分滚动
                                      fixed  不跟随滚动而滚动,无论怎么滚动,在屏幕位置固定
                                      不加这个   默认跟随滚动
          background-size             图片尺寸 大小裁剪  
                                      100px  100px  100*100
          background-origin           规定背景图片定位区域
          background-clip             规定背景绘制区域

          background-color            设置背景颜色
          background-image            设置背景图片 url("")
          background-position         设置背景图片的起始位置
                                      right top
                                      在元素的右面,从上面开始显示
                                      100px 100px 距上100 距左100 这点为图的左上角,开始显示(更方便)
          background-repeat           设置当前背景图片是否允许重复
                                      repeat
                                      repeat-x 横向重复
                                      repeat-x 纵向重复
                                      no-repeat 不重复

    9、一些常用属性
          padding                     设置内边距
          padding-left                左边距
          padding-top                 上边距
          padding-bottom              下边距
          padding-right               右边距
          width                       设置宽
          height                      设置高
    10、CSS文本
          color                       文本颜色
          direction                   文本方向
          line-height                 行高
          letter-spacing              字符间距
          text-align                  对齐元素中的文本
                                           left   左对齐
                                           center 居中
                                           right  右对齐
          text-decoration             向文本添加修饰
          text-indent                 缩进元素中文本的首行 从当前位置向右移动 nem    n可以是负数
          text-transform              元素中的字母
                                           capitalize   每个单词首字母变大写
                                           lowercase    所有字母变小写
                                           uppercase    所有字母变大写
          unicode-bidi                设置文本方向
          white-space                 元素中空白的处理方式
          word-spacing                字间距
          text-shadow                 向文本添加阴影 apx bpx cpx #66ccff
                                           阴影在本体右边apx,下边bpx,清晰度cpx, 颜色#66ccff
          word-rap                    规定文本换行规则
                                           normal       自动换行(单词不会拆开(拐弯))
    11、CSS字体
          font-family                 设置字体系列
                                           引入新字体,在CSS里
                                           @font-face {
                                              font-family: myfont;
                                              src: url()
                                           }
          font-size                   设置字体尺寸
          font-style                  设置字体风格
          font-variant                以小型大写字体或正常字体显示文本
          font-weight                 设置字体的粗细
    12、CSS链接
          四种状态
          a:link     普通的,未被访问的链接
                         text-decoration = none     取消链接的下划线(全部)
                         设置背景颜色后,依然一直存在
          a:visited  用户已经访问的链接
          a:hover    鼠标指针位于链接上方
          a:active   链接被点击的时刻
          设置方式
          a:link {
             样式
          }
    13、CSS列表
          list-style             简写列表项
          list-style-image       列表项图像(文字前的(本来是数字或小圆点)标识)
                                     url()
          list-style-position    列表标志位置(不太明显)
                                     inside        比较靠里
                                     outside       比较靠外
          list-style-type        列表类型
    14、CSS表格
          border: apx solid #66ccff           边框距apx, 设置边框颜色
          border-collapse:  collapse          合并边框,双边框-->单边框
          width                               表格宽
          height                              表格高
          text-align                          设置对其方式
    15、CSS轮廓
          outline                             设置轮廓属性
          outline-color                       设置轮廓颜色
          outline-style                       设置轮廓样式
                                                    groove   大粗线
                                                    double   双细线
                                                    dotted   虚线
          outline-width                       设置轮廓宽度(厚度)
    16、CSS定位-定位
          改变元素在页面上的位置
          普通流: 元素按照其在HTML中的位置顺序决定排布的过程
          CSS定位属性:
             position              把元素放在一个静态的、相对的、绝对的、或固定的位置中
                                           static  偏移量没用了 固定在那作为静态的了 z-index也没用,永远在最下层
                                           relative 占用位置
                                           absolute 定在那里,不占空间,位置绝对固定
                                           fixed  定在屏幕的那里,不占空间,位置相对于屏幕固定
             top                   元素向下的偏移量(!!注意方向!!)
             lift                  元素向右的偏移量
             right                 元素向左的偏移量
             bottom                元素向上的偏移量
             overflow              设置元素溢出其区域发生的事情
             clip                  设置元素显示的形状
             vertical-align        设置元素垂直对齐方式
             z-index               设置元素堆叠顺序 值谁大,谁呈现在前面
    17、CSS定位-浮动
          float           浮动
                               left      向左浮动
                               right     向右浮动
                               none      不浮动
                               inherit   从父级继承浮动属性
          clear           去掉浮动属性(包括继承来的属性)
                               left      去掉向左浮动
                               right     去掉向右浮动
                               both      左右两侧均去掉浮动
                               inherit   从父级继承来的clear属性
          四个方向的边距
          margin-left
          margin-right
          margin-bottom
          margin-top
          margin: apx bpx   上下a, 左右b, 可以写auto,为自适应 EX: margin: apx auto;
    18、CSS盒子模型
          概述
                content   内容
                padding   内边距
                margin    外边距
                border    边框
                height    内容的高
                width     内容的宽
          内边距
                padding 各个方向内边距
                padding-四个方向   某方向边距
          边框
                border-style       边框样式(四个边一样的)
                border-方向-style  可以定义四个边不同的样式
                border-width       边框厚度
                border-方向-width  可以定义四个边不同的厚度
                border-color       边框颜色
                border-方向-color  可以定义四个边不同的颜色
                border-radius      圆角边框:apx (圆角半径)
                border-shadow      添加阴影 apx bpx cpx #66ccff
                                          阴影在本体右边apx,下边bpx,清晰度cpx, 颜色#66ccff
          外边距
                margin             设置所有边距(四个边的)
                margin-方向        四个方向不同的外边距
          外边距自动叠加合并,比如上面的下外边距100px,下面的上外边距200px,则相距200px
    19、CSS常用操作
          对齐
             margin进行水平对齐      
                   margin-left: auto;
                   margin-right: auto;
             position进行左右对齐
                   position: absolute
                   left: 0px;
                   或者right: 0px; 进行左右对齐
             float进行左右对齐
                   float: left / right;
          尺寸
             height
             width
             line-height       设置行高  normal为正常,可以写数字,百分数(normal的百分之多少)(注意不是字体高度,对行间距有影响)
             max-height        在内容充足的情况下,最大高度
             min-height        在内容充足的情况下,最小高度
             max-width         在内容充足的情况下,最大宽度
             min-width         在内容充足的情况下,最小宽度
          分类
             clear             设置一个元素的侧面是否允许其它的浮动元素
             cursor            规定当指向某元素之上时显示的指针类型 改变指向他时的鼠标形状
                                     auto 就是普通的(自动)
                                     cell   十字
                                     alias  反箭头
             display           设置是否及如何显示元素
                                     inline 元素在一行显示(导航栏)
             
             float             定义元素在哪个方向浮动
             position          把元素放在一个静态的、相对的、绝对的、或固定的位置中
             visbility         设置该元素是否可见
          导航栏
             display: block;
             垂直or水平
             每一个元素都有默认的display属性值,比如div元素,它的默认display属性值为“block”,成为“块级”元素(block-level);而span元素的默认display属性值为“inline”,称为“行内”元素。
             
             块级元素:占据一定矩形空间,可以通过设置高度、宽度、内外边距等属性,来调整的这个矩形;
             行内元素 :自己的独立空间,它是依附于其他块级元素存在的,因此,对行内元素设置高度、宽度、内外边距等属性,都是无效的。
          图片
             opacity     透明度
    20、CSS选择器
          元素选择器
                为元素加上CSS样式
          选择器分组
                元素1,元素2,元素3 {
                }

                通配符, 为所有东西安上样式
                * {
                }
          类选择器
                .class {
                }
                结合元素使用
                p的class样式
                p.class {
                }
          id选择器
                #id {
                }
             一个id只能使用一次,而class没这限制
             id选择器不能结合使用(反正就一个id,也不需要结合)
          属性选择器
                [属性] {
                }
                [title] {
                }
                还可以具体点
                [属性=值] {
                }
                必须完全匹配才能使用这样的样式
                [属性~=值] {
                }
                只要当前值里含有这个值就行,比如
                [title ~= "title"] {
                }
                那么<p title = "title abcd"> 可以用
          后代选择器
                p a ul li {
                }
                p 里的 a 里的 ul 里的 li获得此样式
          子元素选择器
                与后代选择器的区别:
                      1.元素直接用>分开而不是空格
                      2.相邻的元素必须是父子关系,不能隔代
          相邻兄弟选择器
                a+b {
                }
                b接在a后面,且ab具有相同的父亲,那么b获得此样式
                EX
                   <ul>
                      <li></li>
                      <li></li>
                      <li></li>
                   </ul>
                li+li {
                }
                第二个和第三个li获得此样式
    21、CSS动画
          2D、3D转换
                2D方法
                   translate(向右多少px,向下多少px)
                   rotate(顺时针转多少deg)
                   scale(宽度放大多少倍,高度放大多少倍)
                   skew(绕x轴转多少deg,绕y轴转多少deg)
                   matrix(a, b, c, d, e, f)
                   a c e        当前x           ax+cy+e   实现坐标的变换
                   b d f   *    当前y     =     bx+dy+f
                   0 0 1         1                1
                   例如matrix(1, 0, 0, 1, 100, 100) 等价于translate(100px, 100px)
                3D方法
                   rotateX(绕x轴转多少deg)
                   rotateY(绕y轴转多少deg)
                兼容问题
                   transform: translate(200px, 200px); /*safari chrome*/
                   -ms-transform: translate(200px, 200px);  /*IE*/
                   -o-transform: translate(200px, 200px); /* Opera */
                   -moz-transform: translate(200px, 200px);  /*Firefox*/
          过渡
                动画效果的CSS
                动画执行的时间
                transition                         设置四个过渡属性
                transition-property                过渡的名称
                transition-duration                过渡效果花费的时间
                transition-timing-function         过渡效果的时间曲线
                transition-delay                   过渡效果开始时间
                transition:属性1 改变用时几s, 属性2 改变用时几s;
                例
                div {
                   100px;
                   height: 100px;
                   transition: width 2s, height 2s, transform 2s;
                   transition-delay: 2s;   加上此行,则鼠标移到div上,两秒后开始变换
                }
                div:hover {
                   200px;
                   height: 200px;
                   transform:rotate(360deg)
                }
          动画,遵循@keyframes规则
                规定动画的名称
                规定动画的时长
                定义动画
                animation: 动画名 动画执行总时间;
                动画无限循环,在上面的定义最后面加上infinite
                animation: 动画名 动画执行总时间
                对动画的配置(百分之几可以自己修改)
                      @keyframes 动画名称{
                         0%{
                            改变的东西(到这个进度的物体的状态)
                         }
                         10% {
                         }
                         .
                         .
                         .
                         100% {
                         }
                      }
          多列
                创建多列来对文本或区域进行布局
                column-count: 分成几列
                column-gap: 每一列中间间隔距离为多少px
                column-rule: 间隔线厚多少px outset 间隔线的颜色
          <hr/> 分割线

    JS
    1、简介
          用法:
                HTML中的脚本必须位于script标签之间
                一般被放到head里面
                不限制脚本数量
                js文件中不需要标签,引入方法
                      <script src = "myjs.js"></script>
          some 操作
          document.write();        输出
          alert(对话框显示的内容);  弹出对话框
                      里面可以输出带标签的
                      document.write("<h1>hello</h1>")
          document.getElementById(id)  通过id获得元素
          元素.innerHTML                获取一对标签内的值,可以通过赋值修改标签内的值
          元素.value                    可以获取input的值
    2、语法
          向浏览器发出命令,告诉浏览器做什么
          语句之间用;分隔
          按照顺序执行
          标识符:
                必须以字母、下划线或$开始
          大小写敏感
    3、注释
          //
          /* */
    4、变量
          var i = 。。。
          定义变量i等于。。。
    5、数据类型
          String
          Number
          Boolean
          Array
                var a = [1, 2, 3, 4];
                或者
                var a = new Array(1, 2, 3, 4);

                document.write(a[2]);

                or
                var a = Array();
                a[3] = 1;
                此时只有a[3]被定义且有值,其它没有(动态)
          Object
          null
          未定义(undefined)
          赋值为null清除变量
    6、运算符
          算数运算符
                + - * / % ++ --
          赋值运算符
                = += %= -= /= *=
          字符串操作
                a+b 字符串拼接
                任何类型与字符串相加都会被转换为字符串类型

          比较运算符
                == === != !== > < >= <=
                10 == "10" is true!!!
                10 === "10" is false!!!
                === 必须保证类型也相同
                
          逻辑运算符
                && || !
          条件运算符
                x < 10? "x比10小" : "x比10大"
    7、条件语句
          if(条件) {
          }
          switch(变量) {
                case 值:

          }
    8、循环语句
          while(条件) {
          }
          for(var i = 1; i <= n; i++) {
          }
          do {
          }while(条件)
    9、跳转语句
          continue
          break
    10、函数
          定义
                function 函数名(参数,参数) {
                }
          调用
                在script里直接调用
                button类型调用
                      <input type = "button" value = "按钮" onclick = "函数名()">
                      或者
                      <button onclick = "函数名()">按钮</button>
                      点击按钮执行函数
    11、异常捕获
          try {
                问题代码块
                throw "123"
                //执行throw时,直接跳转catch,并且弹出的信息是123
          } catch(err) {
                alert(err);
          }
          如果出现问题,就会弹出含有错误信息的报错对话框
    12、事件
          可以被JavaScript侦测到的行为
          onclick             单击事件
          onmouseover         鼠标经过事件
          onmouseout          鼠标移出事件
          onchange            文本内容改变事件
          onselect            文边框选中事件
          onfocus             光标聚集事件
          onblur              移开光标事件
          onload              网页加载事件
          onunload            网页关闭事件
          写在标签里+js
          <button onclick = "abc()"></button>
    13、DOM操作HTML
          js能改变页面中所有的HTML元素
          js能改变页面中所有的HTML属性
          js能改变页面中所有的CSS 样式
          js能够对页面中所有的事件作出反应
          1.改变HTML输出流
                document.write()
                注:在文档加载完成之后再执行会覆盖掉原文档
          2.寻找元素
                通过id寻找
                      getElementById
                通过标签寻找
                      getElementsByTagName
                      返回一个数组,按顺序对应所有的标签
          3.改变HTML内容
                使用属性: innerHTML
          4.改变HTML属性   
                使用属性: attribute
                元素.属性 = 新的值
    14、DOM操作CSS
          1、通过DOM对象改变CSS
                document.getElementById(id).style.具体的样式属性 = 值;
    15、EventListener
          方法:
                addEventListener(类型,函数);             方法用于向指定元素添加事件句柄
                removeEventListener(类型,函数);          移出方法添加的事件句柄
    16、事件流
          事件冒泡
                事件由内而外不断向父亲传播
                比如div里有个button,div和button都定义了点击事件,那么点击button,先触发button的事件,再触发div的事件
          事件捕获
                由外到内更精确的捕获接收
    17、事件处理
          HTML事件处理
                直接添加到HTML结构中
          DOM0级事件处理
                把一个函数赋值给一个事件处理程序属性
                在script里写
                btn = getElementById("btn")
                btn.onclick = function() ...
                在里面搞属性
          DOM2级事件处理
                addEventListener(事件名, 事件处理函数, true/false 事件捕获/事件冒泡)
                removeEventListener()
          IE事件处理程序
                attachEvent
                detachEvent
    18、事件对象
          在出发DOM事件的时候都会产生一个事件对象
                type                获取事件类型
                target              获取事件目标
                stopPropagation()   阻止事件冒泡
                preventDefault()    阻止事件默认行为
                                        比如可以阻止a标签的跳转行为
          函数中定一个event参数,即可通过event.type实现这些
    19、JS内置对象
          var now = Object()
          可以直接定义
          now.abc = 1;
          直接定义now的成员
          或者以字典形式定义
          now = {abc : 1}
          
          自定义对象:
                1 定义并创建对象实例
                2 使用函数来定义对象,然后创建新的对象实例(构造函数)
                      function people(name, age) {
                            this._name = name;
                            this._age = age;
                      }
                      now = new people("hhh", 11);
          字符串对象
                String对象用于处理已有的字符串
                字符串可以使用单引号or双引号
                .length              返回长度
                .indexOf(串)         串第一次出现的位置,没有,-1
                .match(串)           有就返回这个串,否则返回null
                .replace(串1,  串2)  串1替换为串2
                .toUpperCase()       全变为大写
                .toLowerCase()       全变为小写
                .split(符号)         以符号位界,将字符串分割为几个部分,存在数组里
          Date日期对象
                now = new Date()          
                直接输出              获得精确时间
                .getTime()            获得从1970年到现在的毫秒数,一个时间戳
                .getFullYear()        获得年份
                .setFullYear()       设置日期
                .getDay()             获取日期      
                setTimeout(function(), 毫秒);   隔多少毫秒执行一次
                                                    放一个函数里套娃,可以实现这个函数每隔多少秒执行一次
          Array数组对象
                数组1.concat(数组2)            返回两个数组的合并 1 后面连着 2
                .sort()                       排序
                                                    顺序
                                                    sort(function(a, b) {
                                                          a-b; //a 到 b
                                                    })   
                .push()                       在末尾加入元素
                .reverse()                    倒转
          Math对象
                Math.
                round()                       四舍五入
                random()                      返回0-1之间的随机数
                max()                         返回最大值
                min()                         返回最小值
                abs()                         返回绝对值

                parseInt()                    将里面的数转为int
    20、DOM对象控制HTML元素
          getElementsByName()                 通过name获取元素
          getElementsByTagName()              通过标签获取元素
          getAttribute(属性)                   获取元素属性的值
          setAttribute(属性,值)               设置元素属性
          childNodes                          获得子节点
          parentNode()                        获得父节点
          createElement()                     创建元素节点
                                                    var body = document.body;
                                                    var input = document.createElement("input")
                                                    input.type = "button"
                                                    input.value = "按钮"
                                                    body.addChild(input)
          createTextNode()                    创建文本节点
          insertBefore(新节点,在此前插入)      插入节点
          removeChild()                       删除节点
          offsetHeight/Width                  获得网页尺寸(不包含滚动条)
          scrollHeight/Width                  获得网页尺寸(包含滚动条)
          节点  .noneType                      获得其内容
               .nodeName                      返回节点的标签名字  
    21、JS浏览器对象
          window对象
                全局变量是window的属性
                全局函数是window的方法
                window.可省略
                window.innerHeight             浏览器窗口内部高度
                      .innerWidth              浏览器窗口内部宽度
                      .open(页面,页面名字,窗口大小("height = ..., width = ..., top = ..."))                        打开新窗口(窗口大小,距上距左等等)
                      .close()                 关闭新窗口
          计时器
                计时方法
                      1.setInterval() 间隔指定毫秒数不停的执行指定的代码
                        clearInterval() 停止上面的函数
                      2.setTimeout()  暂停指定毫秒数后执行指定代码
                        clearTimeout()  停止上面的函数
          history
                .back()               与在浏览器点击后退按钮相同
                .forward()            与在浏览器点击向前按钮相同
                .go()                 进入历史中的某个页面 +2 向前两次  -2 向后两次
          Location
                .hostname             返回web主机的域名
                .pathname             返回当前页面的路径和文件名
                .port                 返回web主机的端口
                .protocol             返回所使用的web协议
                .href                 返回当前页面url
                .assign()             方法加载新的文档    当前页面变为括号里的页面(当连接用可以)
          screen
                .availWidth           可用的屏幕宽度
                .availHeight          可用的屏幕高度
                .Height               屏幕高度
                .Width                屏幕宽度






          







          






                   
             
             


             



            

    ----olinr
  • 相关阅读:
    CSS使用position:sticky 实现粘性布局
    【笔记】原生JS实现验证框架 checkFun
    jQuery与vue分别实现超级简单的绿色拖动验证码功能
    vue从入门到进阶:Vuex状态管理(十)
    vue从入门到进阶:vue-router路由功能(九)
    vue从入门到进阶:渲染函数 & JSX(八)
    vue从入门到进阶:自定义指令directive,插件的封装以及混合mixins(七)
    vue从入门到进阶:组件Component详解(六)
    vue从入门到进阶:过滤器filters(五)
    vue从入门到进阶:Class 与 Style 绑定(四)
  • 原文地址:https://www.cnblogs.com/olinr/p/14307008.html
Copyright © 2020-2023  润新知