学习定位模型小记

CSS有3种基本的定位机制:普通文档流,浮动,绝对定位

普通文档流:除非专门指定,否则所有框都在普通流中定位,普通流中元素框的位置由元素在HTML中的位置决定。

用position进行定位:

static:position的默认属性,相当于没有对元素进行定位

相对定位:属于普通流定位模型的一种。如果对一个元素进行定位,它将出现在它所在位置上,然后通过设置垂直或水平位置,让这个元素相对于它的原始位置移动。

     在使用相对定位时,无论是否移动,元素都会占据原来的空间,因此移动元素会导致它覆盖其他框。

绝对定位:元素脱离文档流,不占据空间,普通文档流中其他元素的布局就像绝对定位的元素不存在一样,绝对定位元素的位置是相对于已定位的父元素位置确定的。

     如果没有已经定位的父元素,父元素就是html或canvas。

     绝对定位的框可以从它的包含块向上(top)、下(bottom)、左(left)、右(right)移动。当一个元素设置绝对定位,但没有设置宽度,那么它的宽度

     会根据里面的内容而改变。缺点是,尺寸的任何改变都会导致绝对定位的框产生重叠,从而破坏布局。

fixed:绝对定位的一种,和绝对定位的区别是,固定定位的父元素是浏览器窗口。能通过设置位置使得固定定位过的元素一直在浏览器的固定位置。

z-index:当元素脱离文档流之后,会覆盖页面上的其他元素,可以通过设置z-index属性来控制这些框的叠放次序。z-index值越高,框在栈中的位置就越高。

用浮动进行定位:

浮动:浮动元素脱离普通文档流,浮动的框可以左右移动,直到它的外边缘碰到包含框或者另一个浮动框的边缘。浮动产生的初衷是为了设置文字环绕效果。浮动元素不

   再影响其他文档流中的元素,但是会影响框中的文本内容,含有文本的行框会自动缩短,给浮动元素留出位置。要想阻止行框围绕在浮动元素的周围,可以对这些

   行框的元素进行清除浮动(clear属性)。clear:left,right,none,both。使用clear属性时,浏览器会在元素顶上添加足够的外边距,使元素的顶边缘垂直下

   降到浮动框下面,对元素进行清理实际上是为前面的浮动元素留出来垂直空间。这正好解决了absolute定位遇到的问题,垂直高度的改变不影响周围元素,破坏

     布局。

   小技巧:因为浮动元素不占据空间,所以容器不包围他们,添加一个进行清理的空元素可以迫使容器元素包围浮动元素。

用margin进行定位,参见:http://www.cnblogs.com/2050/archive/2012/08/13/2636467.html

时间: 2024-11-10 00:39:33

学习定位模型小记的相关文章

Netty源码学习——ChannelPipeline模型分析

参考Netty API io.netty.channel.ChannelPipeline A list of ChannelHandlers which handles or intercepts inbound events and outbount operations of aChannel.ChannelPipeline implements an advanced form of theIntercepting Filter pattern to give a user full co

ASP.NET MVC学习之模型验证篇

一.学习前的一句话 在这里要先感谢那些能够点开我随笔的博友们.慢慢的已经在博客园中度过一年半了,伊始只是将博客园作为自己学习的记录本一样使用,也不敢将自己的随笔发表到博客园首页,生怕自己的技艺不高,反倒成了笑话.但是随着时间的推移,再也按捺不住这种想法,于是就写了一篇随笔发表到博客园首页.让我意想不到的是有许多人都看了,而且也留下了评论.这让我鼓起勇气写了第二.三.四篇.到现在的连载,这里我希望那些从未发表过随笔的人可以尝试去发表,在这里他人不会嘲讽你,而是会给你更好的建议.说了这么多下面我们继

快速学习Flex模型布局-兼容新旧版本css

最近在学习Flex模型布局 ,刚开始,各种属性看着头疼,现在坚持下来,把自己的学习经验分享一下: Flex模型 发展下来分三个版本: 标准版本(flex | inline-flex).混合版本(flexbox | inline-flexbox).最老版本(box | inline-box); 标准版本:IE11+已经支持啦,其他标准浏览器只要做一下兼容webkit: 混合版本:可以说是IE版本,就只有ie支持 最老版本:建议抛弃吧 --------------------------------

pytorch实战 猫狗大战Kaggle 迁移学习ResNet50模型微调

pytorch实战 猫狗大战Kaggle 迁移学习ResNet50模型微调 猫狗大战数据集 这是kaggle上一个非常经典的二分类图像数据集,训练集包括25000张猫和狗的图片及其标签,测试集则是12500张未标签图片,数据下载地址https://www.kaggle.com/c/dogs-vs-cats/data.不过这个网址比较远古,无法提交自己训练的答案,可以到新的(虽然也不新了)比赛链接提交https://www.kaggle.com/c/dogs-vs-cats-redux-kerne

10.css学习-盒子模型

<html xmlns="http://www.w3.org/1999/xhtml"><head><style type="text/css"> /* 盒子模型: 盒子模型就是把一个html边框比作成了一个盒子的边框,盒子模型要做用于操作数据与边框之间的距离或者 是边框与边框之间的距离. 盒子模型主要是用于操作内边距(padding)与外边距(margin) */ div{ border-style:solid; width:10

深度学习的模型是怎么训练/优化出来的

以典型的分类问题为例,来梳理模型的训练过程.训练的过程就是问题发现的过程,一次训练是为下一步迭代做好指引. 1.数据准备 准备: 数据标注前的标签体系设定要合理 用于标注的数据集需要无偏.全面.尽可能均衡 标注过程要审核 整理数据集 将各个标签的数据放于不同的文件夹中,并统计各个标签的数目 如:第一列是路径,最后一列是图片数目. PS:可能会存在某些标签样本很少/多,记下来模型效果不好就怨它. 样本均衡,样本不会绝对均衡,差不多就行了 如:控制最大类/最小类<\(\delta\),\(\delt

深度学习计算模型中“门函数(Gating Function)”的作用

/* 版权声明:可以任意转载,转载时请标明文章原始出处和作者信息 .*/ author: 张俊林 看深度学习文献,门函数基本上已经是你必然会遇到的一个概念了,最典型的就是LSTM,首先上来你就得过得去"遗忘门""输入门""输出门"这三个门.门函数本身是个独立概念,不过LSTM使用多个门函数来组合出一个带有状态记忆的计算模型而已.随着LSTM大行其道,各种计算模型开始在计算过程中引入门函数的概念,相信这些论文你也没少看,其实这也是一种研究模式,比如

ASP.NET MVC学习之模型绑定(1)

一.前言 下面我们将开始学习模型绑定,通过下面的知识我们将能够理解ASP.NET MVC模型的模型绑定器是如何将http请求中的数据转换成模型的,其中我们重点讲述的是表单数据. 二.正文 1.简单类型绑定 学过一定ASP.NET MVC都会为这个特点所骄傲,就是能够将表单中与同名的参数映射,这相比操作ASP.NET控件来获取值轻便了许多,但是正如上面所说的那样要同名(大小写不区分),下面我们会讲述如何自己去指定. 首先我们在HomeController(如果不存在则创建)中获取表单中的值并显示:

ASP.NET MVC学习之模型绑定(2)

3.手工调用模型绑定 很多情况下我们都是通过形参的方式接收来自http流中的数据,这看似是完美的,但是缺少了很多过程中的控制,所以我们就需要使用手工的方式进行绑定.下面我们通过一个例子来说明,首先打开Views/Home/Index.cshtml页面,并输入如下代码: 1 @{ 2 ViewBag.Title = "Index"; 3 } 4 5 @if (TempData.ContainsKey("msg")) 6 { 7 <h1> 8 @TempDa