First week

255 阅读6分钟

1.HTML

标签

<h1~h6> 标题
<p> 段落
<img scr="文件路径" alt="错误时显示信息"> 图片
<a href="跳转地址或#"> 超链接
<ul> 无序列表
<ol> 有序列表
<li> 列表项
<div> 块元素
<span> 行元素
<form action=""> 表单
<label for="关联项 指向id">
<input type="text" placeholder="背景文字"> 文本框
<input type="radio"> 单选框
<input type="checkbox"> 多选框
<select> 下拉框
<option value=“”> 下拉框选项
<textarea name="" id="" cols="长" rows="宽"> 文本域
<input type="submit"> 提交表单按钮
<button> 按钮
<strong> 加粗
<i> 斜体
<table border="1" cellspacing="0" cellpadding="10"> 表格
<tr> 表格行
<th> 表格表头
<td> 表格列

其他属性及重点

行级元素
<a> <span> <i> <strong> <img> <input>
属性:
  1.多个元素占一行 无法设置宽高
  2.不能嵌套块级元素 只能嵌套行级元素
块级元素
<div> <p> <ul> <li> <ol> <h1~h6> <table>
属性:
  1.一个元素占一行 可以设置宽高
  2.块级元素可以嵌套行级元素、块级元素和行级块元素
  3.<p>和<h1~h6>标签特殊,不能嵌套块级元素。
  

2.CSS

将css引入html

第一种方法
·<style>
第二种方法
·引入css文件 <link rel="stylesheet" href="文件路径">
第三种方法
·内联引入css <a style="内容">

选择器

1. 标签选择器
div{
    代码块
}
2. id选择器
# id名{
    代码块
}
3. class选择器
.class名{
    代码块
}
4.后代选择器
父代名 后代名{
    代码块
}
5.子代选择器
父代名 > 子代名{
    代码块
}
6.伪类选择器
名字:hover{
    代码块
}
7.兄弟选择器
名字 + 同级名字{
    代码块
}
8.群组选择器
名字+名字+名字{
    代码块
}
9.尾元素选择器
名字::after{
    代码块
}
名字::before{
    代码块
}

选择器优先级

1.选择器的优先级 
    style内联样式优先级最高 1000
    #id id选择器 100
    .class 类选择器==a:伪类选择器 10
    div 元素选择器==a::伪元素选择器 1
2.优先级相同的情况下  写在后边的会覆盖前面的
3.id 永远比class优先级高 即使class10级嵌套,也没用

CSS基本语句

background 背景
width 宽
height 高
text-align 文本的水平对齐方式
line-heightheight 文本的垂直对齐方式(数值与height相同则垂直居中)(仅限于单行文本)
color 文本颜色
text-indent 首行缩进
text-decoration: none; 去掉下划线
font-size 字体大小
font-family 字体
font-weight 字体加粗(bold为700px 值在100~900之间)
font-style: italic; 斜体(正常为none)
cursor: pointer;出现小手(类似放到a标签上的视觉效果)

CSS盒模型

1.width 正常宽
2.height 正常高
3.padding 內间距
  eg:padding: 20px;(上 右 下 左都为20px)
     padding: 20px 10px;(上下为20px 左右为10px)
     padding: 1px 2px 3px 4px;(上 右 下 左分别为1px 2px 3px 4px)
     padding-top: 1px;(上为1px)
4.border 边框
  eg:border: 1px solid #000;(边框大小1px 实心 背景色)
     border-style: solid;(solid为实心 none没有样式)
     border-top: 5px solid pink;(顶部边框)
5.margin 外边距
 eg:(同padding)
**标准盒模型宽度=width + padding + border

CSS怪异盒模型

box-sizing: border-box; 怪异盒模型(怪异盒模型 width不变)
box-sizing: border-box 怪异盒模型
            content-box 标准盒模型

CSS浮动

float: left; 左浮动
float: right; 右浮动
clear: both; 消除浮动 (兄弟级别)
overflow: hidden; 溢出隐藏
.parent::after{
    content: '';
    /* 将after设置成块级元素 */
}

**
1.浮动的元素脱离文档流,空间释放
2.塌陷:子元素浮动导致父元素没有高度导致塌陷
 处理办法
 (1).父元素overflow:hidden; BFC
 (2).父元素添加高度
 (3).clear: both; (兄弟级别)
 (4)塌陷元素::after{
     content:'';
     display: block;
     clear:both;
 }
**

CSS定位

position 定位
position: relative; 相对定位
(1).相对于自己初始位置
(2).2.定位以后空间不释放
position: absolute; 绝对定位
(1).相对于最近已定位的祖先元素  如果没有最近已定位的祖先元素 那就相对于body
(2).定位后空间释放
(3).top,left不设置相当于0 0
(4).动画中无初始值动不起来
(5)top right bottom left 相对于已定位祖先元素的距离
position: fixed; 固定定位
(1).相对于浏览器/文档可视区定位
(2).定位后空间释放
(3).定位后宽度 内容撑的
position: sticky;粘性定位 (实现吸顶效果)


CSS行级元素块级元素

display: inline; 行元素 多个占一行 设置不了宽高
display: inline-block; 行级块元素 多个占一行 可以设置宽高
display: block; 块元素 自己占一行 可以设置宽高
display: none; 隐藏
margin: 0 auto; 块级元素水平居中(行级元素水平居中 父级元素设置 text-align:center)

CSS三角箭头

<style>
    div{
        width: 0px;
        height: 0px;
        border: 100px solid transparent;/*transparent 透明色*/
        border-top-color: red;
        }
 </style>
 **
 宽为0 高为0时 border上边框设置颜色其余为透明正好为三角形
 **

CSS旋转 过度

transform: rotate(30deg); 旋转 (顺时针旋转30°)
transform: scale(0.5); 缩放 (缩放0.5倍)
transform: translateX(100px); 位移 (x轴位移100px)
transition: transform 2s linear; 过度 (属性 时间  运动方式(匀速))

CSS 简单动画

transition 需要触发条件
linear:线性过渡。等同于贝塞尔曲线(0.0, 0.0, 1.0, 1.0)
ease:平滑过渡。等同于贝塞尔曲线(0.25, 0.1, 0.25, 1.0)
ease-in:由慢到快。等同于贝塞尔曲线(0.42, 0, 1.0, 1.0)
ease-out:由快到慢。等同于贝塞尔曲线(0, 0, 0.58, 1.0)
ease-in-out:由慢到快再到慢。等同于贝塞尔曲线(0.42, 0, 0.58, 1.0)
eg:transition: width 2s linear;
animation 直接可以动画 可以做复杂动画
eg:
div:hover{
        animation: run 2s ease 3 forwards;//forwards停留在最后
}
@keyframes run{
    0%{
        idth: 500px;
    }
    30%{
        width: 100px;
    }
    50%{
        width: 300px;
    }
    80%{
        width: 200px;
    }
    100%{
        width: 500px;
    }
}

CSS外边距合并

父子元素中外边距合并为两者中较大值
解决方法
1.父元素添加 overflow: hidden;
2.为父元素添加边框
3.为父元素或子元素添加浮动
4.为父元素或子元素添加定位

单行文本溢出小点点

overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;

多行文本垂直居中

1.定位
2.弹性盒模型
3.父元素display:table
  子元素display:table-cell;
        vertical-align:middle 

其他

1.行级块元素居中与文字居中相同
2.溢出隐藏必须设置高(height)