今天在这里跟大家分享css基础最核心的部分,浮动和定位。话不多说,直接上干货!

一、浮动

  • 定义:定位元素是相对于其正常位置应该出现的位置。定位元素的位置是相对于自身、父级元素位置、其他元素以及浏览器窗口本身的位置。
  • 定位主要分为文档流定位、浮动、相对定位、绝对定位、固定定位
  • 浮动主要解决的是行内元素在一行内显示的问题
  • 属性:float  left表示左浮动  right表示右浮动
  • 浮动的问题:
    • 浮动元素是脱离文档流的(不占据页面空间)
    • 浮动只能往左浮动或右浮动,或者停靠在以及浮动元素的边缘上
    • 浮动元素一定要有包含框(父元素)
    • 浮动元素默认不会换行,除非包含框的宽度不足以放下所有的浮动元素,那么后面的元素就会默认换行。
    • 浮动元素的高度最好要保持一致,如果不一致就会浮不上去,出现问题。
    • 如果多个快元素需要在一行内显示,一定要全部都浮动。
    • 元素一旦浮动后,就会快元素(脱离文档流的元素也会变成快元素)。
    • 元素一旦浮动,那么他的宽度就会变成自适应。
  • 浮动造成包含框高度塌陷的问题:
    • 注释:当一个父元素里面的所有子元素都浮动,且父元素没有设置高度,这个时候由于浮动元素脱离文档流,所有造成父元素中没有内容撑开高度。
  • 清除浮动带来的影响:
    • 属性:clear  不是真正的解决问题,只是解决布局混乱的问题。
    •  属性值:  

      • left  清除元素左浮动所带来的影响
      • right  清除元素右浮动所带来的影响
      • both   清除元素左右浮动所带来的影响
  • 清除浮动的方法:解决包含框高度塌陷的问题。
    • 手动设置包含框的高度
    • overflow:hidden撑开父元素的高度
    • 父元素内部最后加一个空的快元素,设置clear:both
    • 内容生成:可以通过向某个元素的前面后者后面加入一个标签

        元素:before {

        content:“插入元素的文本内容”

             width:;

          height:;

          background:;

        }

二、定位

  • 定义:定位主要分为文档流定位、相对定位、绝对定位、固定定位。
  • 属性:position

    • static表示的是静态定位(文档流定位)
    • relative表示的是相对定位
    • absolute表示的是绝对定位
    • fixed表示的是固定定位
  • 何为定位元素:position属性为relative、absolute、fixed。元素定位后,只是让元素可以移动了,真正实现让元素位置的移动,需要配合位移属性。
  • 位移属性:
    • left:距离定位基点左边的距离;正值往右跑,负值往左跑。
    • right:距离定位基点右边的距离;正值往左跑,负值往右跑。
    • top:距离定位基点上边的距离;正值往下跑,负值往上跑。
    • bottom:距离定位基点下边的距离;正值往上跑,负值往下跑。
  • 属性单位:px或者百分比
  • 注意:
    • 一般情况下水平方向和垂直方向位移属性只有一个方向值只有一个
    • 如果left  right同时出现,以left为准
    • 如果top  bottom同时出现,以top为准

重点:

  • 相对定位:

    • 定位基点:基于当前元素未移动前的位置
    • 注意:移动后依然占据着空间,没有脱离文档流。
    • 使用场景:微调元素位置;配合绝对定位
  • 绝对定位:
    • 方向值

      • top:距离定位基点最上边的距离
      • bottom: 距离定位基点最下面的距离
      • left:距离定位基点最左边的距离
      • right:距离定位基点最右边的距离
    • 定位基点:距离最近的已经定位的祖先元素,如果没有默认Html/body。一般定位基点都是加相对定位的。
    • 注意:绝对定位会让元素脱离文档流,不占据页面空间,且会变成快元素,宽度会变成自适应。
    • 使用场景:常用于各种弹出框和页面布局。
  • 固定定位:
    • 定位基点:页面可视区
    • 备注:其他的跟绝对定位一样,也会脱离文档流,也会变成快元素,宽度会变成自适应。
    • 使用场景:页面侧边栏

 完结! 

css基础5的更多相关文章

  1. 前端开发:css基础知识之盒模型以及浮动布局。

    前端开发:css基础知识之盒模型以及浮动布局 前言 楼主的蛮多朋友最近都在学习html5,他们都会问到同一个问题 浮动是什么东西?  为什么这个浮动没有效果?  这个问题楼主已经回答了n遍.今天则是把 ...

  2. CSS基础总结

    CSS基础总结链接地址:http://segmentfault.com/a/1190000002773955

  3. CSS基础篇之了解CSS和它的基本属性

    CSS是什么? CSS英文全名是Cascading Style Sheets翻译过来就是层叠样式表,它主是把网页表现与内容分离的一种样式设计语言.这种语言能优化我们编程,把东西简化和优化写法,而且不同 ...

  4. HTML5 -入门 (---css样式-------------(css基础与css选择器)---------------------—)

    ---恢复内容开始--- 一css基础入门与css选择器 CSS英文全拼:cascading style sheet 层叠样式表. 在html中使用:要在head中写style标签,所有样式放在sty ...

  5. css 基础---选择器

    1.css基础 selector {property: value} eg: h1 {color:red; font-size:14px;} p { text-align: center; color ...

  6. 妙味课堂——HTML+CSS基础笔记

    妙味课堂的课程讲得非常的清楚,受益匪浅.先把HTML和CSS基础课程部分视频的学习笔记记录如下: padding #PS基础 ##前端需要的PS技能 - PS技能(前端需要):切图.修图.测量 - P ...

  7. WEB前端开发CSS基础样式全面总结

    Web前端开发css基础样式全面总结 颜色和单位的使用 颜色 用颜色的名字表示颜色,比如:red 用16进制表示演示 比如:#FF0000 用rgb数值表示颜色,rgb(红,绿,蓝),每个值都在0-2 ...

  8. css基础不扎实

    写了两周的网页,发现自己的css基础还是很差的,当时培训学习的时候就发现了,我做的页面都特别的别扭和丑吧,在班级上应该是垫底的: 原先只知道用float,不会使用定位,网页连固定定位也不会,现在发现, ...

  9. css基础总结一

    最近在弄一个简单管理系统的前端,所以打算将做项目的一些个人感想以及总结简单罗列下,当然,主要针对前端的基础部分以及一些常用的前端个人简单技巧总结.主要分为js部分和css部分,下面是css的基础部分总 ...

  10. CSS基础教程 -- 媒体查询屏幕适配

    响应式布局 Media Query 的使用方法 在上例中, 我们使用Media Queries来根据3种不同尺寸的窗口使用3种不同的样式.通过不同的媒体类型和条件定义样式表规则,媒体查询让CSS可以更 ...

随机推荐

  1. asp.net下ueditor上传大容量视频报http请求错误的解决方法

    故障现象: 当使用百度编辑器ueditor上传大容量视频或大容量图片的时候,编辑器报“http请求错误”的解决方法详解: 原因分析: 目前很多CMS整合了百度的ueditor编辑器,但是上传稍微大一点 ...

  2. 改善C#程序的建议1:非用ICloneable不可的理由

    原文:改善C#程序的建议1:非用ICloneable不可的理由 好吧,我承认,这是一个反标题,实际的情况是:我找不到一个非用ICloneable不可的理由.事实上,接口ICloneable还会带来误解 ...

  3. MVC4使用SignalR出现$.connection is undefined错误备忘

    SignalR使用过程中一定要注意js的引用顺序,否则就会出现$.connection is undefined脚本错误.

  4. 分享基于.NET动态编译&Newtonsoft.Json封装实现JSON转换器(JsonConverter)原理及JSON操作技巧

    看文章标题就知道,本文的主题就是关于JSON,JSON转换器(JsonConverter)具有将C#定义的类源代码直接转换成对应的JSON字符串,以及将JSON字符串转换成对应的C#定义的类源代码,而 ...

  5. DLL中类的显式链接(用虚函数进行显式链接)

    DLL的显式链接在某些时候比隐式链接具有更大的灵活性.比如,如果在运行时发现DLL无法找到,程序可以显示一个错误信息并能继续运行.当你想为你的程序提供插件服务时,显式链接也很有用处. 显式链接到全局C ...

  6. linux下mysql定时备份

    1. 在服务器上建立备份文件的存放文件夹 sudo mkdir /usr/local/dbbackup 2. 编写备份脚本 vi dbbackup.sh 在里面编写如下内容 mysqldump -ur ...

  7. Windows系统版本判定那些事儿(有图,各种情况,很清楚)

    前言 本文并不是讨论Windows操作系统的版本来历和特点,也不是讨论为什么没有Win9,而是从程序员角度讨论下Windows获取系统版本的方法和遇到的一些问题.在Win8和Win10出来之后,在获取 ...

  8. wangjie.rocks的静态编译Qt,openssl,icu

    http://wangjie.rocks/2015/12/28/compile-qt/http://wangjie.rocks/2015/12/10/compile-icu/http://wangji ...

  9. C# — WinForm TCP连接IPv4和IPv6的判断

    大家都知道, XP系统默认使用的是IPv4格式的IP地址, 而Win7系统默认使用的是IPv6格式的IP地址. 所以有些关于TCP连接的WinForm系统,在XP下可能运行正常,但在Win7下却不能运 ...

  10. flask相关使用

    一.手动创建一个干净的含有蓝图的flask项目目录 在init.py中 from flask  import Flask​my_app=Flask(__name__)​def create_app() ...