htmlcss实例小项目?html css菜鸟教程
大家好,关于htmlcss实例小项目很多朋友都还不太明白,今天小编就来为大家分享关于html css菜鸟教程的知识,希望对各位有所帮助!
css网页的几种布局实例
本文主要介绍了浅谈css网页的几种布局的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。
2018年已经过了一周,总结一下2017年在公司wiki上写的一篇关于css布局的知识,当时也借鉴了几个大神写的css布局知识,和自己在项目中遇到的坑。废话不多说。请看以下的干货。
1、左边固定,右边自适应布局的两种实现方式
效果图如下:
大屏展示:
小屏展示:
第一种实现方式通过负边距与浮动实现左边固定,右边自适应的布局。主要代码如下:
<style type="text/css">
.left{
float: left;
width: 100%;
height: 200px;
background-color: red;
}
.left-content{
margin-left: 30%;
}
.right{
float: left;
width: 30%;
margin-left:-100%;
height: 200px;
background-color: green;
}
.layout0{
clear: both;
width: 100px;
height: 100px;
background-color: yellow;
}
</style>
<body>
<p id="body">
<p class="left">
<p class="left-content">
设置子元素的margin,然后父元素必须浮动。
用父元素包裹,主要是因为right会覆盖left,从而导致left内容不可以看到,如果直接在left上设置margin或者padding会导致布局变化,因此只能再用一个p包裹内容,并且去除right覆盖的宽度。
</p>
</p>
<p class="right">-margin必须大于或等于自身的宽度才会上移</p>
<p class="layout0"></p>
</p>
</body>实现过程中需要注意的是:
1.自适应的容器需要容器包裹住,否则容器内的内容会被覆盖。
2.right容器的负边距必须大于或等于自身的宽度才会上移。
3.如果right容器负边距等于自身的宽度它会靠右对齐,如果负边距等于-100%,则会靠左对齐。
第二种通过浮动布局来实现左边固定,右边自适应的布局
主要的代码如下:
<style type="text/css">
.left{
float: left;
width: 200px;
height: 200px;
background-color: yellow;
}
.right{
padding-left: 200px;
height: 200px;
background-color: red;
}
@media(min-width: 650px) and(max-width: 1000px){
.left{
width: 150px;
}
.right{
margin-left: 150px;
}
}
@media(max-width: 640px){
.left{
width: 100px;
}
.right{
margin-left: 100px;
}
}
</style>
<body>
<p id="main">
<p class="left">左边固定宽度,右边自适应</p>
<p class="right"></p>
</p>
</body>实现过程中需要注意的是: 1. left需要脱离文档流,而right只需要正常显示就可以。
2.left只是覆盖在right上边,因此想要让right内容完整显示需要给right padding-left或者margin-left。
大屏展示:
小屏展示:
主要代码如下:
<style type="text/css">
#head{
height: 200px;
background-color: yellow;
}
#body{
width: 100%;
float: left;
}
.main{
background-color: green;
min-height: 200px;
margin: 0 210px;
}
.left{
float: left;
background-color: red;
width: 200px;
height: 200px;
margin-left:-100%;
}
.right{
float: right;
background-color: blue;
width: 200px;
height: 200px;
margin-left:-200px;
}
#footer{
clear: both;
height: 200px;
background-color: orange;
}
</style>
<body>
<p id="head">即左右固定,中间自适应,它可以利用margin-left为负数来实现,它的实现原理就是margin为负值可以改变float元素的排列位置</p>
<p id="body">
<p class="main">当多个元素同时从标准流中脱离开来时,如果前一个元素的宽度为100%宽度,后面的元素通过负边距可以实现上移。当负的边距超过自身的宽度将上移,只要没有超过自身宽度就不会上移</p>
</p>
<p class="left"></p>
<p class="right"></p>
<p id="footer"></p>
</body>实现过程中需要注意:
1.中间自适应的p需要放在left和right容器前面并且内容p需要用父容器包裹
2.left和right容器向同一个方向浮动。
主要代码如下:
<style type="text/css">
#head{
height: 200px;
background-color: yellow;
}
#body{
overflow: hidden;
}
.left{
float: left;
background-color: red;
width: 200px;
height: 200px;
}
.right{
float: right;
background-color: blue;
width: 200px;
height: 200px;
}
.main{
background-color: green;
height: 200px;
margin: 0 210px;
}
#footer{
clear: both;
height: 200px;
background-color: orange;
}
</style>
<body>
<p id="head">左右固定宽度并且向两边浮动,中间的p设置两边的margin</p>
<p id="body">
<p class="left"></p>
<p class="right"></p>
<p class="main">该方案有一个缺陷,在小屏幕情况下回导致right被挤下去,main没有了</p>
</p>
<p id="footer"></p>
</body>实现过程中需要注意:
1.该方式只需要注意中间自适应的p需要放在left和right容器的后面。
2.left和right容器向两边浮动。
主要代码如下:
<!DOCTYPE html>
<html>
<meta charset="utf-8">
<head>
<title>使用flex实现“双飞翼布局”</title>
</head>
<style type="text/css">
#main{
display: flex;
display:-webkit-flex;//谷歌浏览器加前缀
flex-flow: row nowrap;
justify-content: flex-start;
align-items: center;
}
.left{
flex: 0 0 auto;
width:100px;
height: 200px;
background-color: red;
word-wrap: break-word;
overflow: hidden;
}
.main{
flex: 1 1 auto;
height: 200px;
background-color: green;
}
.right{
flex: 0 0 auto;
width: 100px;
height: 200px;
background-color: yellow;
}
</style>
<body>
<p id="main">
<p class="left">flex语法我参照了阮一峰关于flex语法介绍 ;
<p class="main"></p>
<p class="right"></p>
</p>
</body>
</html>如果未了解过flex布局请移至文末点击链接查看阮一峰大神写的关于flex语法
3、定位布局
这边就不絮絮叨叨的讲一些基础的css定位知识了(ps:不会的请自行到w3c官网查阅),我主要来讲解一下工作中遇到的坑。以免其他人和我一样掉入坑中。
第一:使用多个fixed时,注意自己需要基于什么定位,因为如果父级有用transform属性时,可能会导致子元素的fixed基于父元素容器定位,而不是基于body定位。效果如下:
在上图中我可以发现中间黑色的小框是基于父级来定位,并且宽度也基于父容器的50%。详细的请看下面代码:
<!DOCTYPE html>
<html>
<head>
<title>关于position的定位的坑</title>
</head>
<style type="text/css">
body{
margin: 0;
padding: 0;
}
i{
font-style: normal;
cursor: pointer;
}
#delete-button{
position: absolute;
left: 45%;
top: 45%;
text-align: center;
vertical-align: middle;
height: 50px;
margin: auto;
cursor: pointer;
}
#delete-button> i{
display: inline-block;
width: 32px;
height: 32px;
border-radius: 16px;
background-color: orange;
color: red;
font-size: 32px;
vertical-align: middle;
line-height: 28px;
}
/*第一个模态框的样式*/
#layout{
display: none;
width: 100%;
height: 100%;
}
/*使用flex布局水平竖直居中*/
/*#layout-box{
position: fixed;
width: 100%;
height: 100%;
left: 0;
top: 0;
display: flex;
display:-webkit-flex;
flex-flow: column nowrap;
justify-content: center;
align-items: center;
background-color: rgba(0,0,0,0.3);
}*/
/*使用postion和 transform水平垂直居中*/
#layout-box{
position: fixed;
width: 100%;
height: 100%;
background-color: rgba(0,0,0,0.3);
}
.modal-dialog{
position: absolute;
left: 50%;
top: 50%;
width: 500px;
height: 200px;
border-radius: 10px;
transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
-moz-transform: translate(-50%,-50%);
-o-transform: translate(-50%,-50%);
background-color:#fff;
}
.dialog-title{
text-align: center;
color:#333;
font-size: 28px;
margin-bottom: 10px;
}
.dialog-content{
text-align: center;
color:#666;
font-size: 18px;
}
.dialog-button{
margin-top: 20px;
width: 100%;
color:#333;
}
.dialog-button>.button-box{
display: inline-block;
width: 48%;
text-align: center;
}
.button-box span{
display: inline-block;
padding: 10px;
color:#fff;
border-radius: 6px;
cursor: pointer;
}
#confirm{
background-color:#27ad9a;
}
#cancel{
background-color: red;
}
/*添加按钮的样式*/
#add-button> i{
display: inline-block;
width: 32px;
height: 32px;
border-radius: 16px;
background-color:#27ad9a;
color:#fff;
font-size: 32px;
vertical-align: middle;
line-height: 28px;
text-align: center;
}
#add-button{
display: inline-block;
cursor: pointer;
}
/*第二个模态框的样式*/
.layout2{
display: none;
position: fixed;
width: 100%;
height: 100%;
left: 0;
top: 0;
background-color: rgba(0,0,0,0.2);
}
.modal-dialog2{
position: fixed;
left: 50%;
top: 50%;
width: 50%;
height: 50%;
border-radius: 10px;
transform: translate(-50%,-50%);
-webkit-transform: translate(-50%,-50%);
-moz-transform: translate(-50%,-50%);
-o-transform: translate(-50%,-50%);
background-color: rgba(0,0,0,0.2);
}
.modal-dialog2> span{
display: block;
}
.modal-text{
float: left;
}
#close{
color: red;
font-size: 24px;
float: right;
cursor: pointer;
}
</style>
<body>
<p id="delete-button"><i>-</i>删除</p>
<p id="layout">
<p id="layout-box">
<p class="modal-dialog">
<p class="dialog-title">提示</p>
<p class="dialog-content">是否删除该项,点击确定</p>
<p class="dialog-button">
<p class="button-box">
<span id="confirm">确定</span>
</p>
<p class="button-box">
<span id="cancel">取消</span>
</p>
</p>
<p id="add-butto
重庆前端html5分享大型WEB项目不可缺少的几个模块
随着“互联网+”概念的普及,和移动互联网技术的成熟,越来越多的公司,需要更加智能、高效、合理、人性化的交互,对web前端的需求也会越来越大,同时由于web前端的技术框架种类繁多,更新也非常快,这样也需要大量的前端人员进行自己的技能提升。我们在做一个大型项目的时候,需要很多模块与元素去构建,接下来,重庆前端html5开发培训为大家分享在一个WEB项目中必不可少的几个模块。
一:webpack
什么是webpack?
为什么要用webpack?
传统web开发——在传统的web开发中,对于各种各样的资源,我们会通过html中的各种标签引入,那css资源文件来说,传统总,通常我们在定义好的css文件夹中创建一个css文件格式的的文件,在里面定义好的样式,在html中,通过标签将css资源引入进来,小型的项目这样做并没有什么大的问题,而且还比较快速。但随着公司的业务发展扩大,项目的也变得越来越大,这种方式的弊端就慢慢显现,项目臃肿,维护变得困难。webpack开发——在webpac开发中,通过我们定义好的资源加载规则,面对上面的大型项目时,在我们要新增资源文件,我们不需要再苦苦到几千行html文件中导入你新增的资源文件,只需要在你定义好的文件夹中新增文件,便可以正式投入到开发中了。这样的话大大简化了开发和维护的成本。
二:npm
什么是npm?
npm(nodejs packages manager)翻译过来就是node安装包管理工具,通俗来说,在开发过程总,一些常用的功能和实现,开发人员可以将他们封装起来,上传到npm,交给npm管理,其他开发人员变可以npm的命令,见这些封装好的代码块下载到自己的项目中供自己使用,这样避免了大家重复造轮子的尴尬现象,大大减少了开发难度和时间。
三:vue.js
什么是vue.js?
在讲vue.js之前,先一起来看看jquery,因为很多人都是从jquery转到vue.js,在转变的过程中,发现有些人开始学vue.j时候很难写出一个应用出来,在使用原生的js无论是对节点的获取,事件的监听和ajax的处理,都存在兼容的问题,开发过程中必须写大量的兼容性代码。而jquery出现正好的解决了这个问题。vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,Vue采用自底向上增量开发的设计。Vue的核心库只关注视图层,它不仅易于上手,还便于与第三方库或既有项目整合。
vue.js——独特的一面
让从jquery转vue.js的开发人员很诧异的是,vue.js的视图层和model层是响应,我们只要修改了model层的数据,视图层会时时显示最新的数据结果。数据驱动,在DOM思想中,每当我们想操控一样东西,我们总想去获取节点,在对这个节点进行操作。而在vue.js中,这种想法是多余的,我们可以通过控制实例的的数据,来达到我们需要的结果。
vue.js可以做什么
vue.js只有30多k,相对动不动就300多k的库来说,这是非常适合来开发H5应用的,结合hbuider的runtime和native.js,开发出来的应用不仅跨平台,而且性能也相当不错,功能也和native app没有什么差异。
重庆中天学校JAVA培训老师建议毕业生,毕业了不要盲目挑战,做什么项目无所谓,关键是要有成长机会。大项目小项目没关系,主要是要能学到东西,不要好高骛远,不要随便下结论,不要对重复的工作厌倦,出了问题及时反馈领导,不要怕。
html5课程
学HTML5要学哪些课程
可以去H5e看看,HTML5课程融合了HTML5开发基础课程、CSS3基础课程和移动前端交互JavaScript+JQuery+Ajex等课程
培训机构HTML5课程都有哪些内容
您好,Html课程包括以来下8个阶段:自
阶段1.前端核心基础
HTML+_CSS核心、JavaScript基础语法、JavaScript面向对象、JavaScript DOM和BOM编程、jQuery框架
阶段2.HTML5+ CSS3+移动端核心
HTML5新特性、Canvas专列、CSS3新特性、CSS3进阶、CSS3实例演练
阶段3.移动端
移动端核心、移动端适配、移动端特效
阶段4.服务器端
服务器端开发、数据库操作、前后端交互核心、微信公众号开发
阶段5.JavaScript高级
JavaScript基础深入剖析、JavaScript面向对象深入讲解、JavaScript异步编程、JavaScript函数式编程、JavaScript设计模式
阶段6.前端必备
性能优化、版本控制工具、模块化、项目构建工具
阶段7.高级框架
React框架基本使用、React框架进阶、Vue框架基本使用、Vue框架进阶、Vue源码分析
阶段8.小程序
原生小程序入门、原生小程序API使用、小程序框架Mpvue
希望对你有所帮助。
HTML5培训究竟是学的什么
可以看看HTML5混合式开发课程体系了解各个课程阶段学习的内容,大致分三个课程阶段学习:
第一阶段:PCterminal
PC端页面重构
1、认知行业、岗位、部分专业术语,就业趋势与行业未来展望;
2、HTML5核心元素及布局应用;
3、CSS3核心属性及布局应用;
4、图形、图像软件的使用(PS,FW,AI);
5、浏览器兼容及解决方案;
6、图片整合、滑动门及宽高自适应等高级应用技术;
7、初步接触JS。
PC端交互开发(原生JS)
1、javascript基础语法和变量、控制语句、循环语句、函数、事件处理、数组、常见排序算法;
2、DOM操作和BOM操作;
3、定时器、Cookie本地存储、内置对象、正则表达式、闭包、JS面向对象语法、JSON、堆栈结构;
4、Ajax动态读取数据、异步操作、与DOM、JSON的结合使用;
5、各种主流浏览器兼容性处理;
6、单例、工厂、代理、观察者等设计模式;
7、ECMA6.0新特性介绍。
PC端交互开发(JQuery)
1、初识jQuery、jQuery的优势、jQuery框架核心功能、最容易混淆的几个概念
2、jQuery各种选择器的使用,及选择器的应用优化;
3、Dom节点操作、插入、删除、复制、移动节点等操作;
4、事件处理、事件处理模型、事件处理机制、jQuery事件封装机制、jQuery事件应用;
5、jQuery中的动画、动画时间的概念、基本动画方法、复杂动画方法、停止动画与参数说明、jQuery动画的队列问题;
6、表单开发,设计可用性表单、表单验证、增强型表单;
7、Ajax、XMLHttpRequest基础、jQuery Ajax、工具函数、缓存;
8、在jQuery中编写插件、插件扩展、插件应用、jQuery.pagination分页、jQuery.qtip信息提示、 jQuery.artDialog弹出层、jQuery.jscrollpane滚动条;
9、理解模块式开发,以及requirejs插件的使用。
PC项目实训
1、了解项目需求,项目流程;
2、了解项目管理,模块分配,项目时间预估;
3、了解产品周期,参与团队协作;
4、综合运用HTML+CSS,JS,JQ,JQUERY UI, jquery easyui等技术,完成大型PC端项目开发。
第二阶段:Mobile terminal
HTML5+CSS3新添特性
1、HTML5概述,新增的元素和废除的元素、全局属性;
2、HTML5基础:新增文档结构元素(Article、section、nav)智能表单、文件API(FileList对象和File对象、FileReader接口)、拖放API;
3、CSS3基础:新增的后代选择器、伪类选择器、文本阴影、圆角、盒阴影、变形处理(transform)、动画(transitions)、帧定义(key-frames)、旋转(rotate)、 animation;
4、HTML5多媒体audio音频元素、Video视频元素、视频回调事件;
5、本地存储web storage、本地缓存;
6、定位基础知识以及原理,结合google(高德)地图定位;
7、响应式布局概念以及语法(@media)、web网页和mobile网页的区别、样式继承;
8、Canvas标签基础知识、绘制矩形、绘制圆形、使用路径、图像裁剪、保存为文件、创建动画。
WebAPP项目开发及实训
1、angular.js、backbone.js;
2、数据交互,ajax与DOM交互应用;
3、HTML5+CSS3在实际项目中的应用;
4、项目管理,模块分配,项目时间预估;
5、产品周期,团队协作;
6、微信场景开发;
7、微信平台互动开发。
第三阶段:混合应用开发及实训
混合应用开发及综合实训
1、混合开发原理;
2、APP与webAPP;
3、混合应用与HTML页面交互;
4、通过客户端传递数据;
5、项目的版本迭代;
6、项目打包与应用,生成APK。
学HTML5要学哪些课程
HTML5的前景是非常好的,企业现在安卓、iOS开发人员都在学习HTML5混合开发,节约成本、一专内多能容是未来很多企业用人趋势!HTML5工程师在今后的工作中与Android、iOS工程师对接的几率非常大。
混合式开发思想培训出来的学员比单一课程学员薪水高至少2000元,同时企业也更愿意去花更多的钱来聘请那些了解比较全面的开发人员!
混合式开发讲师需要同时精通Android、iOS、HTML5等多门课程,这样才能在教学过程中融合混合式开发思想,让学员能够同时了解一些与本课程最相关的技术,为学员今后在工作中的对接和配合工作提供极大助力,对学员今后的职业发展也会有很大帮助。
可以参加HTML5培训班的学习,拥有“混合式开发特聘讲师”这一大特色的,混合式开发课程对讲师的要求非常之高,至少同时具备3年或以上教学和技术经验的讲师才可以胜任,这是其他机构无法提供的!
学习主要也是靠自己的,现在HTML5很火,前景未来5~10年内绝对好,好好学习拿高薪工作是没问题的。
HTML5课程中都有哪些
千锋的课程设置大概是这样:第一阶段移动前端制作基础(HTML5+CSS3基础)第二版阶权段移动前端交互基础(JS+JQ+Ajax)第三阶段移动前端综合开发(H5+C3+jQ Mobile+bootstrap+zepto)第四阶段项目实训
5培训课程都包含哪些内容
千锋来的根据各大企业需求分七源个阶段:1、前端页面重构;2、JavaScript高级程序设计;3、PC端全栈项目开发;4、移动端WebApp开发;5、混合(Hybrid,RN)开发;6、NodeJS全栈开发;7大数据可视化。
学5需要学哪些课程
HTML5、CSS3、JavaScript、jQuery、Ajax、HTTP、Vue/React/Angular三大前端框架等等,这些在千锋都能学到。
想学习5培训的课程,谁能介绍一下课程的体系
所有互联网的页面开发都可以用到HTML5,包括PC端,手机端和平板。
HTML5高端课程大纲分为十个阶段。
第一阶段:前端页面重构;
第二阶段:JavaScript高级程序设计;
第三阶段:PC端全栈开发;
第四阶段:移动WebApp开发;
第五阶段:混合(RN,HybridAPP)开发;
第六阶段:NodeJS开发;
第七阶段:游戏开发;
第八阶段:Java开发;
第九阶段:PHP开发;
第十阶段:Android开发。
h5是什么5的课程包括哪些技术
是一种超文本标记语言,h5是就是的第五代简称。
h5包含了专所有技术点,
比如:网页属设计,网页上面的图片、文字、视频的显示和排版技术。
h5课程一般包含传统网页设计技术;新型网页设计UI设计(比如h5海报设计等等);由于h5使用场景位居前段,所以课程还会涉及一些产品和用户体验以及设计的内容。
5培训课程有哪些
觉得千锋的挺好呀,可以考虑下。
文章分享结束,htmlcss实例小项目和html css菜鸟教程的答案你都知道了吗?欢迎再次光临本站哦!