整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

html+css写出响应式侧边导航栏

果图

html部分:先写用div画好六个导航的卡片,再利用css添加响应效果

<div class='card-holder'>
    <div class='card-wrapper'>
        <a href='#'>
            <div class='card bg-01'>
                <span class='card-content'>item #1</span>
            </div>
        </a>
    </div>
    <div class='card-wrapper'>
        <a href='#'>
            <div class='card bg-02'>
                <span class='card-content'>long menu item #2</span>
            </div>
        </a>
    </div>
    <div class='card-wrapper'>
        <a href='#'>
            <div class='card bg-03'>
                <span class='card-content'>menu item #3</span>
            </div>
        </a>
    </div>
    <div class='card-wrapper'>
        <a href='#'>
            <div class='card bg-04'>
                <span class='card-content'>item #4</span>
            </div>
        </a>
    </div>
    <div class='card-wrapper'>
        <a href='#'>
            <div class='card bg-05'>
                <span class='card-content'>menu item #5</span>
            </div>
        </a>
    </div>
    <div class='card-wrapper'>
        <a href='#'>
            <div class='card bg-06'>
                <span class='card-content'>long menu item #1</span>
            </div>
        </a>
    </div>
</div>

css部分:通过hover选择器和transition属性实现导航响应式操作,即可实现如图效果

a:link,
a:hover,
a:visited,
a:active {
  color: #fff;
  text-decoration: none;
}
body {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  background: #fff;
}
.card-holder {  
  position: fixed;
  width: 0px;
  overflow: visible;
}
.card-wrapper {
  display: inline-block;
  float: right;
  clear: both;
}
.card {
  position: relative;
  left: 32px;
  padding: 16px 32px 16px 64px;
  margin: 8px;  
  background: #fff;
  transition: all 0.3s ease-in-out 0.1s;
}
//添加导航的响应式效果
.card:hover {
  position: relative;
  left: 100%;
  margin-left: -32px;
  transition: all 0.3s ease-in-out;
}
.card-content {
  display: inline-block;
  color: #fff;
  font-family: 'Droid Sans', sans-serif;
  font-size: 16px;
  font-weight: bold;
  white-space: nowrap;
}
.bg-01 { background: #539770; }
.bg-02 { background: #4B7D74; }
.bg-03 { background: #8DC2BC; }
.bg-04 { background: #EDD6B4; }
.bg-05 { background: #BE7467; }
.bg-06 { background: #E2AE63; }

然后就能实现我们这个实用又美观的侧边导航栏啦

1)字体的属性

  • font 属性
  • font-family 属性
  • font-size 属性
  • font-weight 属性
  • font-style 属性

字体属性用于定义字体的类型、字号大小、加粗、斜体等方面样式。常用的字体属性如下表所示:

属 性

可 取 值

描 述

font

font-style、font-variant、font-weight、font-size(或 line-height)、font-family

在一个声明中设置所有的字体属性

font-family

字体名称、inherit

设置字体类型

font-size

xx-small、x-small、small、medium(默认)、large、x-large、xx-large smaller、larger length、%、inherit

设置字体大小

font-weight

normal(默认)、bold、bolder、lighter、inherit 100、200…900(400=normal,700=bold)

设置字体粗细

font-style

normal、italic、oblique、inherit

设置字体风格

例子,

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      h3 {
        font-size: 20px;
        font-family: 隶书;
        line-height: 28px;
      }
      span {
        font: italic 16px 华文彩云;
      }
    </style>
  </head>
  <body>
    <h3>Web 前端技术</h3>
    <span
      >在当今社会中,Web 已经成为网络信息共享和发布的主要形式。要想开发 Web 应用
      系统,就必须掌握 Web 前端技术。</span
    >
  </body>
</html>

显示为,

(2)CSS 中链接标签可用的伪类:

  • a:link
  • a:hover
  • a:active
  • a:visited

CSS 中,伪类是添加到选择器的关键字,给指定元素设置一些特殊状态,我们以 : 开头。

链接有以下四个状态。这四种状态也称之为超链接的伪类。

状态

效果

a:link

普通的、未被访问的链接。

a:hover

鼠标指针位于链接的上方。

a:active

链接被单击的时刻。

a:visited

用户已访问的链接。

针对超链接的上述四种状态设置样式规则,能起到美化超链接的作用。例如,为了完成下对超链接的显示要求,编写的 CSS 样式代码如下。

状 态

颜 色

背 景 色

文 本 修 饰

未访问

蓝色

无下画线

鼠标移到

黑色

#DDDDDD

下画线

正单击

红色

#AAAAAA

删除线

已访问

绿色

无下画线

对于超链接的伪类,我们推荐的使用顺序是::link - :visited - :hover - :active。

例子,

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      * {
        text-decoration: none;
      }
      a:link {
        color: red;
      }
      a:visited {
        color: blue;
      }
      a:hover {
        color: green;
      }
      a:active {
        color: yellow;
      }
    </style>
  </head>
  <body>
    <a href="#">这是一个链接</a>
  </body>
</html>

显示为,

为什么要按照这样的顺序来使用呢? 调整几个伪类的顺序,看看会发生什么。

我们把 a:link 放到最后,效果如下:

从图中可以发现其中的样式属性都被覆盖了。

(3)列表相关的样式属性:

  • list-style 属性
  • list-style-image 属性
  • list-style-position 属性
  • list-style-type 属性

属 性

可 取 值

描 述

list-style

list-style-type、list-style-position、list-style-image

在一个声明中设置所有的列表属性

list-style-image

URL、none

设置图像为列表项标志

list-style-position

inside、outside、inherit

设置列表中列表项标志的位置

list-style-type

disc(默认)、circle、square、decimal 等

设置列表项标志的类型

例子,

wget https://labfile.oss.aliyuncs.com/courses/2841/list.gif

TML5基础

单词及含义

  • head 头,表示 HTML 文档的头部
  • title 标题,表示 HTML 文档的标题
  • meta 元数据,用于为 HTML 文档定义关键信息
  • body 页面的身体
  • p 段落元素
  • h1-h6 标题字
  • img 图像元素,将图像添加到页面
  • src 属性,用来表示路径
  • a a元素创建一个超级链接
  • href 属性,链接url
  • target 属性,目标,可取值为_blank、_self等
  • name 属性,锚点名称
  • table 表格
  • tr 创建表行
  • td 创建单元格
  • width 设置宽度
  • height 设置高度
  • align 设置表格对齐方式
  • border-radius 设置边框倒角
  • border 设置边框
  • bgcolor 设置表格背景颜色
  • valign 设置垂直对齐方式
  • colspan 设置单元格跨列
  • rowspan 设置单元格跨行
  • caption 为表格定义标题
  • thead 表头行分组
  • tbody 表主体行分组
  • tfoot 表尾行分组
  • ol 有序列表
  • ul 无序列表
  • li 列表项元素
  • type 设置列表项标识
  • dl 定义列表
  • dt 定义了定义列表中的一个术语
  • span 最常用的行内元素
  • dd 对定义列表中的术语提供定义
  • div 用来设计页面的大致布局
  • header 语义化标签,用来定义网页的页头部分内容
  • nav 语义化标签,用来定义网页的导航部分内容
  • section 语义化标签,用来定义网页的主体信息部分内容
  • aside 语义化标签,用来定义网页的边栏信息部分内容
  • footer 语义化标签,用来定义网页的页脚信息部分内容
  • form 定义创建表单
  • action 定义表单被提交时发生的动作
  • method 指出表单数据提交的方式
  • name 表单元素属性,用于区分提交数据
  • input 文本输入控件、按钮、单选、复选按钮、选项框等
  • value 控件的数据,用于区分提交的数据
  • name 控件的名称,用于分组数据,提交数据必要属性
  • disabled 禁用控件
  • text 文本
  • password 密码
  • maxlength 限制输入的字符数
  • radio 单选
  • checkbox 复选
  • submit 提交
  • reset 重置
  • button 按钮
  • label 将文本和控件联系在一起,单击文本,效果和单击控件一样
  • for 表示和该元素相关联的控件的id值
  • select 创建选项框
  • size 选项框属性,值大于一,则为滚动列表
  • multiple 设置多选
  • option 选项
  • selected 预选中
  • textarea 多行文本输入框
  • cols 指定文本区域的列数
  • rows 制定文本区域的行数
  • fieldset 元素,为控件分组
  • legend 元素,为分组制定一个标题
  • iframe 浮动框架,可以在一个浏览器窗口中同时显示多个页面文档
  • details 元素,用于定义细节
  • summary 元素,用来包含details元素的标题
  • meter 用于定义度量衡
  • min 范围最小值,默认为0
  • max 范围最大值,默认为1
  • time 元素,用于定义公历的时间或日期
  • mark 元素,用于定义页面中带有记号的文本,突出显示

CSS3基础

  • css 层叠样式表,又叫级联样式表,简称样式表,用于为页面添加样式
  • style 元素,用于在HTML页面中使用内部样式表和内联样式表
  • link 元素,链接需要的外部样式表文件,在文档的head元素内添加
  • !important 用于调整样式规则的优先级
  • * 通用选择器,用于设置整个文档的默认样式
  • id id选择器,用于选取元素,优先级较高
  • class class选择器,用于选取元素,优先级次之
  • :link 链接伪类,适用于尚未访问的链接
  • :visited 链接伪类,适用于访问过的链接
  • :hover 动态伪类,适用于鼠标悬停在HTML元素时
  • :active 动态伪类,适用于HTML元素被激活时
  • :focus 动态伪类,适用于HTML获取焦点时
  • px 像素
  • pt 磅
  • em 一em等于当前的字体尺寸
  • rgb 颜色单位
  • overflow 当内容溢出元素框时如何处理
  • hidden 文本内容超出尺寸时,隐藏文本不显示
  • auto 自适应
  • box-shadow 向边框添加一个或多个阴影
  • outline 轮廓
  • Box Model 框模型 - 定义了元素框处理元素内容、内边距、边框和外边距的方式
  • margin 外边距 - 围绕在元素边框周围的空白区域是外边距(与下一个元素之间的空间量)
  • margin-top 上外边距
  • margin-right 右外边距
  • margin-bottom 下外边距
  • margin-left 左外边距
  • padding 内边距 - 内容区域和边框之间的空间
  • padding-top 上内边距
  • padding-right 右内边距
  • padding-bottom 下内边距
  • padding-left 左内边距
  • background-color 背景色
  • background-image 背景图
  • bankground-repeat 背景重复(默认值为repeat)
  • repeat 背景重复的取值 - 在垂直方向和水平方向重复
  • repeat-x 背景重复的取值 - 在水平方向重复
  • repeat-y 背景重复的取值 - 在垂直方向重复
  • no-repeat 背景重复的取值 - 仅显示一次
  • background-size 背景图片尺寸
  • cover 背景图片尺寸的取值 - 把背景图像扩展至足够大,以使背景图像完全覆盖背景区域,图片的某些部分也许无法显示
  • contain 背景图片尺寸的取值 - 把背景图像扩展至最大尺寸,以使其宽度和高度完全适应内容区域
  • background-attachment 背景图片的固定(默认值为scroll)
  • scroll 背景图片的固定的取值 - 背景会随文档滚动
  • fixed 背景图片的固定的取值 - 背景图像固定,并不会随着页面的其余部分滚动
  • background-position 背景定位 - 改变图像在背景中的位置
  • background-image 渐变属性
  • linear-gradient 渐变属性的取值 - 线性渐变
  • radial-gradient 渐变属性的取值 - 径向渐变
  • repeating-linear-gradient 重复线性渐变
  • repeating-radial-gradient 重复径向渐变
  • font-family 指定字体
  • font-size 字体大小
  • font-weight 字体加粗
  • bold 地体加粗的取值 - 加粗
  • font-style 字体样式
  • italic 字体样式的取值 - 斜体
  • font-variant 小型大写字母显示
  • color 文本颜色
  • text-align 文本水平排列方式
  • text-decoration 文字修饰
  • underline 文字修饰的取值 - 下划线
  • line-height 行高
  • text-indent 首行文本缩进
  • text-shadow 文本阴影
  • vertical-align 垂直对齐方式 - 用于表格设置单元格的对齐方式
  • top 垂直对齐方式的取值 - 上
  • middle 垂直对齐方式的取值 - 中
  • bottom 垂直对齐方式的取值 - 下
  • border-collapse 边框合并属性 - 用于表格
  • separate 边框合并的取值 - 边框分离
  • collapse 边框合并的取值 - 边框合并
  • border-spacing 边框边距 - 设置相邻单元格的边框间的距离
  • caption-side 设置表格标题的位置 - 有top跟bottom两个值
  • table-layout 表格单元格、行、列的算法规则
  • float 如果需要设置框浮动在包含框的左边或右边可通过此属性来设置
  • clear 用于清除浮动所带来的影响
  • display 元素的显示方式
  • none 元素的显示方式的取值 - 该框及其内容不再显示,不占用文档的空间
  • block 元素的显示方式的取值 - 让元素表现的像块级元素一样
  • inline 元素的显示方式的取值 - 让元素表现的像内联元素一样
  • inline-block 元素的显示方式的取值 - 让元素表现的像行内块一样
  • visibility 显示效果属性
  • visible 显示效果属性的取值 - 元素可见(默认值)
  • hidden 显示效果属性的取值 - 元素不可见,但是依然占据空间
  • collapse 显示效果属性的取值 - 用于表格时,可删除一行或一列,且不影响表格布局
  • opacity 设置元素的不透明级别 - 值从0(完全透明)到1(完全不透明)
  • cursor 定义鼠标放在元素边界范围内时的光标形状
  • pointer cursor的取值 - 光标形状为小手
  • list-style-type 控制列表中列表项的样式
  • disc 列表项样式的取值 - 实心圆
  • circle 列表项样式的取值 - 空心圆
  • square 列表项样式的取值 - 实心方块
  • list-style-position 列表项的位置
  • outside 列表项的位置的取值 - 标记放在文本以外
  • inside 列表项的位置的取值 - 标记放在文本以内
  • list-style 列表项样式的简写属性,常用方式:list-style:none
  • position 元素的定位属性
  • relative 定位属性的取值 - 相对定位(相对于其本身的位置偏移某个距离)
  • absolute 定位属性的取值 - 绝对定位(相对于已定位的祖先元素偏移某个距离)
  • z-index 元素的堆叠顺序 - 值越大越接近页面表面
  • fixed 定位属性的取值 - 固定定位(将元素固定在页面的某个位置)

CSS3高级

  • :target 目标伪类 - 用于选取当前活动的目标元素
  • :enabled 状态伪类 - 匹配每个已启用的元素
  • :disabled 状态伪类 - 匹配每个被禁用的元素
  • :checked 状态伪类 - 匹配每个已被选中的input元素
  • :first-child 结构伪类 - 匹配属于其父元素的首个子元素
  • :last-child 结构伪类 - 匹配属于其父元素的最后一个子元素
  • :empty 结构伪类 - 匹配没有子元素的每个元素
  • :only-child 结构伪类 - 匹配属于其父元素的唯一的子元素
  • :not(selector) 否定伪类 - 匹配非指定元素/选择器的每个元素
  • :first-letter 选择器用于选取指定选择器的首字母
  • :first-line 选择器用于选取指定选择器的首行
  • ::selection 选择器选取被用户选取的部分
  • content content属性与 :before 及 :after 伪元素配合使用,来插入生成内容
  • counter-reset 用于定义计时器,并设置其初始值(默认为 0)可以设置或重复为正值或负值
  • counter() 用于为指定计数器创建计数字符串。语法为:counter(name),name为计数器名称
  • counter-increment 设置某个选择器每次出现的计数器增量,默认值为 1
  • column-count 规定元素应该被分隔的列数
  • column-gap 规定被分隔的列之间的间隔
  • column-rule 规定被分隔的列之间的宽度、样式和颜色
  • transform 向元素应用 2D 或 3D 转换。该属性允许我们对元素进行旋转、缩放、移动或倾斜
  • transform-origin 用来指定元素的转换原点位置
  • perspective 定义3D元素距视图的距离
  • translate 翻译
  • rotate 旋转
  • scale 规模;比例(尺)
  • transition-property 应用过渡效果的css属性的名称(为过渡属性设置多个值,多个值之间用逗号隔开)
  • transition-duration 完成过渡效果需要花费的时间(以s或ms为单位,0则没有过度效果)
  • transition-timing-function 过渡效果的速度曲线
  • transition-delay 过渡效果什么时候开始(以s或ms为单位)
  • transition 过渡,简写属性
  • @keyframes 声明动画
  • animation-name 调用动画,规定需要绑定到选择器的keyframe的名称
  • animation-duration 动画完成一个周期所需要的时间,单位为秒或毫秒
  • animation-timing-function 动画的速度曲线
  • ease 慢速开始,快速变快,慢速结束
  • linear 匀速开始结束
  • ease-in 加速(渐入)
  • ease-out 减速(淡出)
  • ease-in-out 加速然后减速
  • animation-delay 设置播放之前的延迟时间(单位为秒或毫秒)
  • animation-iteration-count 设置播放次数(取值为数值或infinite,infinite表示无限次播放)
  • animation-direction 动画播放方向(取值为normal或alternate,normal为正常播放,alternate为轮流播放)
  • animation 简写属性,定义动画的各方面。语法为(animation:name duration timing-function delay iteration-count direction)
  • animation-fill-mode 规定动画在播放之前或之后,其动画效果是否可见。可取值(none:不改变默认行为;forwards:当动画播放完成后,保持最后一个属性;backwards:在动画显示之前,应用开始属性值;both:向前和向后填充模式都被应用)
  • animation-play-state 规定动画正在运行还是停止,取值为(paused:动画暂停;running:动画播放)
  • —webkit— 兼容Chrome和Safari浏览器
  • —moz— 兼容Firefox浏览器
  • —o— 兼容Opera浏览器
  • YUI Compress 压缩
  • css-sprites 样式表贴图定位;图片拼合;精灵

JAVASCRIPT基础

  • javascript 一种运行于javascript解释器中的解释型脚本语言
  • ECMAScript 核心语法标准
  • Console 控制台
  • script 脚本
  • var 声明变量,如(var = name)
  • undefined 未定义,变量声明但未赋值
  • null 空,没有值
  • const 常量声明,常量的值不能改变
  • number 数字类型,既可表示整数,也可表示浮点数
  • string 字符串类型,表示一系列的文本字符数据
  • Trident Microsoft IE使用的内核
  • Gecko Mozilla Firefox使用的内核
  • Webkit Apple Safari、Google Chrome、Opera(2013后)使用的内核
  • Presto Opera使用的内核
  • boolean 布尔类型,只有两个值,true和false
  • function 函数
  • return 声明函数的返回值
  • declare 宣布,声明
  • switch 转换,用于循环结构
  • case 情况,用于循环结构
  • while 当…时,用于循环结构
  • do 做,要求,规定
  • response 响应,反应,回答
  • result 结果,答案
  • get 得到,获得
  • bonus 奖金,红利
  • for 因为,用于循环结构
  • if 如果,用于分支结构
  • else 否则,用于分支结构
  • continue 跳出本次循环,执行下一次循环
  • break 跳出循环,执行循环后面的语句
  • sale 销售,出售