学习css几乎俩周,来总结一下

对于初学者来说,有一些基本的概念是我们应当清楚的。掌握这些概念,可以帮助你更加有效的开发,大大提高开发效率。

1.盒子模型 2.浮动(float) 3.定位(position)

盒子模型

首先我们先聊一聊盒子模型,我们所能够看到的网页,本质上其实都是一个个盒子组成的,通过盒子和盒子的组合,来达到布局效果,所以学习盒子模型的重要性可想而知

我们可以看到盒子模型是由:内容部分(content),padding(内填充),boder(边框),margin(外边距)组成的,我们在网页的任何一个盒子都是这个样子的

padding,margin,boder我们都可以单独设置某一方向上面的值,或者整体设置值

padding的设置是将内容在盒子中来进行一定操控,而margin是盒子和盒子之间位置的掌控

知道了这一点就可以大大提高你在布局方面的效率

浮动

嗯,就是浮动,float属性,这也是一个很重要的概念性东西,在提到这点之前我们先聊一下网页的组成。

网页是盒子组成,但是只是结构上来说,真正本质上网页其实是由元素组成,分别有块级元素行级元素
块级元素是独占一行的,就像div标签,我们在开发者模式中可以很直观的看到

而行级元素是可以并排在一行之中的,它的长和宽是依照内容来进行变化的,比如span标签,所以对其设置宽和高是没有用处的,不会影响整体的布局

float属性就是浮动,它可以设置为left,right,none
形式上表现为在父级容器的最左边,或者最右边

正常情况下,对于块级元素来说,他是处于标准文档流之中的,但是一但设置浮动之后,该元素就会脱离标准文档流,成为独立出来的一部分,而剩下的元素将会以省略它的方式进行排列。这样子可能会导致布局紊乱,这个时候大神又发明出来一种新方法来解决这个问题。

正常情况




浮动以后

float:left
clear:both;将布局改变的元素直接给清楚浮动,抵消了浮动带给的元素整体的移动,很实用的一点

定位

学会了以上俩种方式我们会发现,我们可以大致将页面布局出来,使用浮动左右排列,但是这种排列并不是很精确的一种方式,这个时候大神又发明了一种方法,定位

定位可以精确严格将元素位置摆放在所期望的位置当中,定位分为三种,相对定位绝对定位和固定定位,因为固定定位一般很少会用到,所以我们在这里不讲。

相对定位(relative)相对于他在标准文档流之中的位置进行定位,可以设置它偏移属性来改变所处的位置,但是在文档流之中的位置仍然保留

初始图片是按照一列排列,对box2进行了相对定位,给box设置了top,left俩个偏移量。我们可以看到box2在以初始位置来进行定位,而且初始位置在文档流之中还是仍然保留下来。

绝对定位(absolute)绝对定位是依照 最近的已经定位的父元素 来进行定位的,若父元素没有定位,则会按照body来进行定位。且定位元素会脱离标准文档流

初始图片仍然是按照一列排列, 对父类div进行了相对定位,但不设置偏移量。对box2进行绝对定位,分别给right和buttom偏移量,使得box2以被定位过的父类div为参照物进行定位。可以直观的看出来,绝对定位的元素会脱离标准文档流,会影响到box3的位置。

Html+CSS二周目--->常用概念的更多相关文章

  1. 201271050130-滕江南-《面向对象程序设计(java)》第十二周学习总结

    201271050130-滕江南-<面向对象程序设计(java)>第十二周学习总结 项       目 内      容 这个作业属于哪个课程 https://www.cnblogs.co ...

  2. 201521123072《java程序设计》第十二周学习总结

    201521123072<java程序设计>第十二周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 书面作业 将Student对象 ...

  3. 201521123038 《Java程序设计》 第十二周学习总结

    201521123038 <Java程序设计> 第十二周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 书面作业 将Student ...

  4. 201771010134杨其菊《面向对象程序设计java》第十二周学习总结

    第十二周学习总结 第一部分:理论知识 内容概要: AWT与Swing简介:框架的创建:图形程序设计: 显示图像: 1.AWT组件: 2.Swing 组件层次关系 3 .AWT与Swing的关系:大部分 ...

  5. 201871010123-吴丽丽《面向对象程序设计(Java)》第十二周学习总结

    201871010123-吴丽丽<面向对象程序设计(Java)>第十二周学习总结 项目 内容 这个作业属于哪个课程  https://www.cnblogs.com/nwnu-daizh/ ...

  6. 201871010106-丁宣元 《面向对象程序设计(java)》第十二周学习总结

    201871010106-丁宣元 <面向对象程序设计(java)>第十二周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nw ...

  7. 201871010111-刘佳华《面向对象程序设计(java)》第十二周学习总结

    201871010111-刘佳华<面向对象程序设计(java)>第十二周学习总结 实验十   集合与GUI初步 实验时间 2019-11-14 第一部分:基础知识总结 第九章知识总结 1. ...

  8. 201871010101-陈来弟《面向对象程序设计(Java)》第十二周学习总结

    201871010101-陈来弟<面向对象程序设计(Java)>第十二周学习总结 实验十   集合与GUI初步 实验时间 2019-11-14 第一部分   理论部分 1.(1) 用户界面 ...

  9. 201871010104-陈园园 《面向对象程序设计(java)》第十二周学习总结

    201871010104-陈园园 <面向对象程序设计(java)>第十二周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...

随机推荐

  1. [SinGuLaRiTy] NOIP膜你赛-Day 1

    [SinGuLRiTy-1022] Copyright (c) SinGuLaRITy 2017. All Rights Reserved.  对于所有题目:Time Limit:1s || Memo ...

  2. LAMP之Mysql源码配置安装

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RD ...

  3. selenium+Node.js在windows下的配置和安装

    转载:http://www.jianshu.com/p/5e64bb70abb8

  4. 打谷机 BZOJ 1603 模拟

    Farmer John有一个过时的打谷机(收割小麦),它需要带子来带动.发动机驱动轮1总是顺时针旋转的,用来带动转轮2,转轮2来带动转轮3,等等.一共有n(2<=n<=1000)个转轮(n ...

  5. Linux中Mysql安装卸载

    参考博客:https://www.cnblogs.com/xrog/p/6862669.html安装步骤:#wget http://dev.mysql.com/get/mysql57-communit ...

  6. (转)Selenium-11: Execute JavaScript with JavascriptExecutor

    Outline Sometimes we cannot handle some conditions or problems with Webdriver, web controls don’t re ...

  7. windows_study_4

    描述:如何在虚拟外面访问虚机内的网站 解决:http://虚机ip.网站地址(http://192.168.124.41/wx/sites/tf/)

  8. P1060 开心的金明(动态规划背包问题)

    题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:"你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过NN元钱 ...

  9. 5.SpringMVC

    1.SpringMVC概述 概述: SpringMVC是基于请求驱动,围绕一个核心Servlet 转发请求到对应的Controller而设计的优点:是一个典型的教科书式的MVC构架,易学易用提供了清晰 ...

  10. CVE-2015-1635(MS15-034 )进行DOS攻击

    上一篇的文章方法进行检测漏洞是否存在,接着我们搭建win2008进行DOS攻击测试,导致服务器蓝屏,异常关机. 靶机:windows2008     IIS7.0    192.168.31.91 攻 ...