html5与css3前端学习笔记

一、前端页面开发流程

  1. 创建页面项目目录
  2. 使用Photoshop对效果图切图,切出网页制作中需要的小图片
  3. 将装饰类图像合并,制作成雪碧图
  4. 结合Photoshop和代码编辑器,参照效果图,进行html和css代码书写,制作页面

二、CSS权重

CSS权重指的是样式的优先级,有两条或多条样式作用于一个元素,权重高的那条样式对元素起作用,权重相同的,后写的样式会覆盖前面写的样式。

权重的等级:可以把样式的应用方式分为几个等级,按照等级来计算权重

  1. !important,加在样式属性值后,权重值为 10000
  2. 内联样式,如:style=””,权重值为1000
  3. ID选择器,如:#content,权重值为100
  4. 类,伪类和属性选择器,如: content、:hover 权重值为10
  5. 标签选择器和伪元素选择器,如:div、p、:before 权重值为1
  6. 通用选择器(*)、子选择器(>)、相邻选择器(+)、同胞选择器(~)、权重值为0
  7. 实例

    实例一:

    <style type="text/css">div{color:red !important;}        
    </style>
    ......
    <div style="color:blue">这是一个div元素</div>
    <!-- 
    两条样式同时作用一个div,上面的样式权重值为10000+1,下面的行间样式的权重值为1000,
    所以文字的最终颜色为red 
    -->
    

    实例二:

    <style type="text/css">#content div.main_content h2{color:red;    }#content .main_content h2{color:blue;}
    </style>
    ......
    <div id="content"><div class="main_content"><h2>这是一个h2标题</h2></div>
    </div>
    <!-- 
    第一条样式的权重计算: 100+1+10+1,结果为112;
    第二条样式的权重计算: 100+10+1,结果为111;
    h2标题的最终颜色为red
    -->

 三、CSS3新增选择器

1、E:nth-child(n):匹配元素类型为E且是父元素的第n个子元素

<style type="text/css">            .list div:nth-child(2){background-color:red;}
</style>
......
<div class="list"><h2>1</h2><div>2</div><div>3</div><div>4</div><div>5</div>
</div><!-- 第2个子元素div匹配 -->

2、E:first-child:匹配元素类型为E且是父元素的第一个子元素
3、E:last-child:匹配元素类型为E且是父元素的最后一个子元素
4、E > F:E元素下面第一层子集
5、E ~ F:E元素后面的兄弟元素
6、E + F:紧挨着的后面的兄弟元素

属性选择器:
1、E[attr] 含有attr属性的元素

<style type="text/css">div[data-attr='ok']{color:red;}
</style>
......
<div data-attr="ok">这是一个div元素</div>

2、E[attr='ok'] 含有attr属性的元素且它的为“ok”
3、E[attr^='ok'] 含有attr属性的元素且它的值的开头含有“ok”
4、E[attr$='ok'] 含有attr属性的元素且它的值的结尾含有“ok”
5、E[attr*='ok'] 含有attr属性的元素且它的值中含有“ok”

 四、CSS3圆角、raba

CSS3圆角:设置某一个角的圆角,比如

  • 设置左上角的圆角:border-top-left-radius:30px 60px;
  • 同时分别设置四个角: border-radius:30px 60px 120px 150px;
  • 设置四个圆角相同:border-radius:50%;

rgba(新的颜色值表示法)

1、盒子透明度表示法:

    .box{opacity:0.1;/* 兼容IE */filter:alpha(opacity=10); }

2、rgba(0,0,0,0.1) 前三个数值表示颜色,第四个数值表示颜色的透明度

五、CSS3 transition动画、transform变换、animation动画

CSS3 transition动画

  1. transition-property:设置过渡的属性,比如:width height background-color
  2. transition-duration:设置过渡的时间,比如:1s 500ms
  3. transition-timing-function:设置过渡的运动方式,常用有 linear(匀速)|ease(缓冲运动)
  4. transition-delay:设置动画的延迟
  5. transition: property duration timing-function delay 同时设置四个属性

CSS3 transform变换

  1. translate(x,y) 设置盒子位移
  2. scale(x,y) 设置盒子缩放
  3. rotate(deg) 设置盒子旋转
  4. skew(x-angle,y-angle) 设置盒子斜切
  5. perspective 设置透视距离
  6. transform-style flat | preserve-3d 设置盒子是否按3d空间显示
  7. translateX、translateY、translateZ 设置三维移动
  8. rotateX、rotateY、rotateZ 设置三维旋转
  9. scaleX、scaleY、scaleZ 设置三维缩放
  10. tranform-origin 设置变形的中心点
  11. backface-visibility 设置盒子背面是否可见

animation动画

  1. @keyframes 定义关键帧动画
  2. animation-name 动画名称
  3. animation-duration 动画时间
  4. animation-timing-function 动画曲线 linear(匀速)|ease(缓冲)|steps(步数)
  5. animation-delay 动画延迟
  6. animation-iteration-count 动画播放次数 n|infinite
  7. animation-direction 动画结束后是否反向还原 normal|alternate
  8. animation-play-state 动画状态 paused(停止)|running(运动)
  9. animation-fill-mode 动画前后的状态 none(缺省)|forwards(结束时停留在最后一帧)|backwards(开始时停留在定义的开始帧)|both(前后都应用)
  10. animation:name duration timing-function delay iteration-count direction;同时设置多个属性

六、CSS3 浏览器前缀

浏览器样式前缀:为了让CSS3样式兼容,需要将某些样式加上浏览器前缀

  • -ms- 兼容IE浏览器
  • -moz- 兼容firefox
  • -o- 兼容opera
  • -webkit- 兼容chrome 和 safari

比如:

div
{    -ms-transform: rotate(30deg);        -webkit-transform: rotate(30deg);    -o-transform: rotate(30deg);        -moz-transform: rotate(30deg);    transform: rotate(30deg);
}

自动添加浏览器前缀:目前的状况是,有些CSS3属性需要加前缀,有些不需要加,有些只需要加一部分,这些加前缀的工作可以交给插件来完成,比如安装: autoprefixer,可以在Sublime text中通过package control 安装 autoprefixer

七、HTML5新增标签和新增表单控件

新增语义标签

  1. <header> 页面头部、页眉
  2. <nav> 页面导航
  3. <article> 一篇文章
  4. <section> 文章中的章节
  5. <aside> 侧边栏
  6. <footer> 页面底部、页脚

音频视频
1、<audio>
2、<video>

PC端兼容h5的新标签的方法,在页面中引入以下js文件:

<script type="text/javascript" src="//cdn.bootcss.com/html5shiv/r29/html5.js"></script>

新增表单控件 

新增类型:网址 邮箱 日期 时间 星期 数量 范围 电话 颜色 搜索

<label>网址:</label><input type="url" name="" required><br><br> 
<label>邮箱:</label><input type="email" name="" required><br><br> 
<label>日期:</label><input type="date" name=""><br><br> 
<label>时间:</label><input type="time" name=""><br><br> 
<label>星期:</label><input type="week" name=""><br><br> 
<label>数量:</label><input type="number" name=""> <br><br>
<label>范围:</label><input type="range" name=""><br><br> 
<label>电话:</label><input type="tel" name=""><br><br> 
<label>颜色:</label><input type="color" name=""><br><br> 
<label>搜索:</label><input type="search" name=""><br><br>

新增常用表单控件属性:
1、placeholder 设置文本框默认提示文字
2、autofocus 自动获得焦点
3、autocomplete 联想关键词

八、常用css列表

  • color:设置文字的颜色,如: color:red;
  • font-size:文字的大小,如:font-size:12px;
  • font-family:文字的字体,如:font-family:'微软雅黑';
  • font-style:字体是否倾斜,如:font-style:'normal'; 设置不倾斜,font-style:'italic';设置文字倾斜
  • font-weight:文字是否加粗,如:font-weight:bold; 设置加粗 font-weight:normal 设置不加粗
  • line-height:文字的行高,设置行高相当于在每行文字的上下同时加间距, 如:line-height:24px;
  • font:同时设置文字的几个属性,写的顺序有兼容问题,建议按照如下顺序写: font:是否加粗 字号/行高 字体;如: font:normal 12px/36px '微软雅黑';
  • text-decoration:文字的下划线,如:text-decoration:none; 将文字下划线去掉
  • text-indent:文字首行缩进,如:text-indent:24px; 设置文字首行缩进24px
  • text-align:文字水平对齐方式,如text-align:center 设置文字水平居中
  • text-overflow:设置一行文字宽度超过容器宽度时的显示方式,如:text-overflow:clip 将多出的文字裁剪掉 text-overflow:ellipsis 将多出的文字显示成省略号
  • white-space:一般用来设置文本不换行,如:white-space:nowrap 设置文本不换行 一般与text-overflow和overflow属性配合使用来让一行文字超出宽度时显示省略号
  • list-style:一般用来设置去掉ul或者ol列表中的小圆点或数字 如:list-style:none
  • width:设置盒子内容的宽度,如: width:100px;
  • height:设置盒子内容的高度,如: height:100px;
  • border-top:设置盒子顶部边框的三个属性 如:border-top:5px solid red;设置盒子顶部边框为3像素宽的红色的实线
  • border-left:设置盒子左边边框的三个属性 如:border-left:3px dotted red;设置盒子左边边框为3像素宽的红色的点线
  • border-right:设置盒子右边边框的三个属性 如:border-right:2px dashed red;设置盒子右边框为2像素宽的红色的虚线
  • border-bottom:设置盒子底部边框的三个属性 如:border-bottom:1px solid red;设置盒子底部边框为1像素宽的红色的实线
  • border:同时设置盒子的四个边框,如果四个边的样式统一就使用它 如:border:1px solid #000 设置盒子四个边都是1像素宽的黑色实线
  • padding:设置盒子四个边的内边距 如:padding:10px 20px 30px 40px 分别设置盒子上边(10px)、右边(20px)、下边(30px)、左边(40px)的内边距(顺时针)
  • margin:设置盒子四个边的外边距 如:margin:10px 20px 30px 40px 分别设置盒子上边(10px)、右边(20px)、下边(30px)、左边(40px)的外边距(顺时针)
  • overflow:设置当子元素的尺寸超过父元素的尺寸时,盒子及子元素的显示方式 如:overflow:hidden 超出的子元素被裁切
  • display:设置盒子的显示类型及隐藏,如:display:block 将盒子设置为以块元素显示 display:none 将元素隐藏
  • float:设置元素浮动 如:float:left 设置左浮动 float:right 设置右浮动
  • clear:在盒子两侧清除浮动 如:clear:both 在盒子两侧都不允许浮动
  • position:设置元素定位 如:position:relative 设置元素相对定位
  • background:设置元素的背景色和背景图片,如:background:url(bg.jpg) cyan;设置盒子的背景图片为bg.jpg,背景色为cyan
  • background-size:设置盒子背景图的尺寸,如:background-size:30px 40px;设置背景图的尺寸宽为30px,高为40px,这个属性不能合到background属性中
  • opacity:设置元素整体透明度,一般为了兼容需要加上filter属性设置 如:opacity:0.1;filter:alpha(opacity=10)
  • cursor:设置鼠标悬停在元素上时指针的形状 如:cursor:pointer 设置为手型
  • outline:设置文本输入框周围凸显的蓝色的线,一般是设为没有 如:outline:none
  • border-radius:设置盒子的圆角 如:border-radius:10px 设置盒子的四个角为10px半径的圆角
  • box-shadow:设置盒子的阴影,如:box-shadow:10px 10px 5px 2px pink;设置盒子有粉色的阴影
  • transition:设置盒子的过渡动画,如:transition:all 1s ease;设置元素过渡动画为1秒完成,所有变动的属性都做动画
  • animation:设置盒子的关键帧动画
  • transform:设置盒子的位移、旋转、缩放、斜切等变形,如:transform:rotate(45deg);设置盒子旋转45度
  • box-sizing:设置盒子的尺寸计算方式,如:box-sizing:border-box 将盒子的尺寸计算方法设置为按边框计算,此时width和height的值就是盒子的实际尺寸
  • border-collapse:设置表格边框是否合并,如:border-collapse:collapse,将表格边框合并,这样就可以制作1px边框的表格

    学习导航:http:www.xqnav.top

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/1211.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

万兆网络的十字路口:电口还是光模块?

&#x1f335;在构建高速、高效的网络系统时&#xff0c;选择正确的连接技术至关重要。万兆电口&#xff08;10GBASE-T&#xff09;和万兆光模块&#xff08;SFP&#xff09;是目前市场上两种主流的高速网络解决方案。它们各有优势&#xff0c;但在不同的应用场景和需求下&…

稀碎从零算法笔记Day54-LeetCode:39. 组合总和

题型&#xff1a;数组、树、DFS、回溯 链接&#xff1a;39. 组合总和 - 力扣&#xff08;LeetCode&#xff09; 来源&#xff1a;LeetCode 题目描述 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target &#xff0c;找出 candidates 中可以使数字和为目标数…

在PostgreSQL中如何进行全文搜索,以及如何优化全文搜索性能?

文章目录 如何进行全文搜索1. 创建全文搜索向量2. 执行全文搜索查询 如何优化全文搜索性能1. 使用GIN索引2. 限制搜索范围3. 优化文本处理4. 使用并发搜索5. 监控和调整配置 在PostgreSQL中&#xff0c;全文搜索通常通过使用tsvector和tsquery类型&#xff0c;以及to_tsvector和…

python笔记之面向对象

目录 一、面向对象&#xff08;OOP--Object Oriented Programming&#xff09; 二、面对对象的三大特征 1、封装 2、继承 3、多态 三、函数重载&#xff08;overload&#xff09; 一、面向对象&#xff08;OOP--Object Oriented Programming&#xff09; ——把解决问题…

安居水站:水站经营秘籍:年入30万不是梦。水站创业指南。

在这个快节奏的社会里&#xff0c;初创企业家们总是在寻找一条明路&#xff0c;以在竞争激烈的市场中立足。为了帮助他们更好地实现这一目标&#xff0c;我根据经验决定制定一份水站经营指导手册。这份手册将详细阐述如何从零起步&#xff0c;如何运营&#xff0c;如何进行市场…

制作一个RISC-V的操作系统十二-定时器中断

文章目录 CLINT定时器中断mtimemtimecmp机制总体框架流程时间节拍系统时钟代码 CLINT 产生软件中断和定时器中断 定时器中断 mtime 类似计数器&#xff0c;按照硬件对应的固定频率递增 上电后会自动复位为0&#xff0c;有硬件自动完成 mtimecmp 需要自己设置&#xff0…

Java 多线程加法求和

Java 多线程加法求和 代码 先上代码再上解析&#xff1a; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger;public class Sum implements …

文件IO总结

标准C库IO函数和Linux系统IO函数对比 标准c库IO函数 标准C库提供了一系列的输入输出&#xff08;IO&#xff09;函数&#xff0c;这些函数主要包括在 <stdio.h> 头文件中。这些函数可以大致分为几类&#xff1a; 文件操作函数&#xff1a; fopen&#xff1a;打开文件fc…

Linux内核之内核通知文件系统创建的路径:fsnotify_create用法实例(五十六)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 优质专栏&#xff1a;多媒…

【图解计算机网络】从浏览器地址输入到网页显示的整个过程

从浏览器地址输入到网页显示的整个过程 整体流程DHCPhttp协议报文组装DNSTCP协议封装与TCP三次握手IP协议封装与路由表MAC地址与ARP协议交换机路由器 整体流程 从往浏览器输入一个地址到网页的显示&#xff0c;要经过很长的一个流程&#xff0c;中间涉及到计算机网络的许多知识…

*Linux系统的进程和计划任务管理

目录 一、查看进程 1、程序和进程的关系 *2、ps查看静态进程信息 1&#xff09;ps aux 2&#xff09;ps -elf *3、top查看动态进程信息 4、pgrep查看进程信息 5、pstree查看进程树 二、控制进程 1、进程启动方式 2、进程的前后台调度 3、终止进程的运行 三、计划任…

React【Day4】

路由快速上手 1. 什么是前端路由 一个路径 path 对应一个组件 component 当我们在浏览器中访问一个 path 的时候&#xff0c;path 对应的组件会在页面中进行渲染 2. 创建路由开发环境 # 使用CRA创建项目 npm create-react-app react-router-pro# 安装最新的ReactRouter包 …

Git TortoiseGit 安装使用详细教程

前言 Git 是一个免费的开源分布式版本控制系统&#xff0c;是用来保存工程源代码历史状态的命令行工具&#xff0c;旨在处理从小型到非常大型的项目&#xff0c;速度快、效率高。《请查阅Git详细说明》。TortoiseGit 是 Git 的 Windows Shell 界面工具&#xff0c;基于 Tortoi…

探索Java设计模式:责任链模式

深入理解与实践Java设计模式之责任链模式 一、简要介绍 责任链模式&#xff08;Chain of Responsibility Pattern&#xff09;是行为型设计模式的一种&#xff0c;它为请求的发送者和接收者解耦&#xff0c;让多个对象都有机会处理这个请求。这种模式创建了一个包含多个处理对…

第 2 章:FFmpeg简介

2.1 历史 历史 一些相关术语介绍&#xff1a; 容器&#xff08;Container&#xff09;格式&#xff1a;一种文件封装格式&#xff0c;里边主要包含了流&#xff0c;一般会使用一个特定的后缀名标识&#xff0c;例如.mov、.avi、.wav等。流 &#xff08;Stream&#xff09;&am…

政安晨:【Keras机器学习示例演绎】(五)—— 利用视觉变换器进行物体检测

目录 导言 导入和设置 准备数据集 实施多层感知器&#xff08;MLP&#xff09; 实施补丁创建层 显示输入图像的补丁 实施补丁编码层 构建 ViT 模型 运行实验 评估模型 政安晨的个人主页&#xff1a;政安晨 欢迎 &#x1f44d;点赞✍评论⭐收藏 收录专栏: TensorFlow与…

第二届 Oceanbase 开发者大会 实录

第二届 Oceanbase 开发者大会 实录 今天很有幸参加了Oceanbase 开发者大会&#xff0c;我是真的我一开始还不知道什么是Oceanbase &#xff0c;直到我开了会才知道。看来真的需要多参加一些这样活动。 会议议程 我们科普一下什么是Oceanbase OceanBase 是阿里巴巴集团推出…

如何进行数据库的迁移与同步——【DBA 从入门到实践】第四期

在日常的数据库运维工作中&#xff0c;我们时常会面临数据库替换、机房搬迁、业务测试以及数据库升级等任务&#xff0c;这些任务都需要对数据进行迁移和同步操作。【DBA 从入门到实践】第4期&#xff0c;将引导大家深入了解数据库迁移的流程&#xff0c;并探讨在迁移过程中可用…

【Java】怎么处理Oracle的Clob类型字段

Oracle 数据库中的 CLOB&#xff08;Character Large Object&#xff09;字段类型用于存储大量文本数据&#xff0c;例如长文本、大型文档或 XML 数据等。 这个类型在 Java 中&#xff0c;可以使用 java.sql.Clob 类型来接收 Oracle 数据库中的 CLOB&#xff08;Character Lar…

AJAX——图书管理案例

1.渲染列表 自己的图书数据&#xff1a;给自己起个外号&#xff0c;并告诉服务器&#xff0c;默认会有三本书&#xff0c;基于这三本书做数据的增删改查。 // 目标1&#xff1a;渲染图书列表 // 1.1 获取数据 // 1.2 渲染数据const creator 哈哈 // 封装-获取并渲染图书列表函…