CSS 定位和浮动
CSS 为定位和浮动提供了一些属性,利用这些属性,可以建立列式布局,将布局的一部分与另一部分重叠,还可以完成多年来通常需要使用多个
表格才能完成的任务。 定位的基本思想很简单,它允许你定义元素框相对于其正常位置应该出现的位置,或者相对于父元素、另一个元素甚至浏览器窗口本身的位置。
显然,这个功能非常强大,也很让人吃惊。要知道,用户代理对 CSS2 中定位的支持远胜于对其它方面的支持,对此不应感到奇怪。 另一方面,CSS1 中首次提出了浮动,它以 Netscape 在 Web 发展初期增加的一个功能为基础。浮动不完全是定位,
不过,它当然也不是正常流布局。我们会在后面的章节中明确浮动的含义。 CSS 定位属性
CSS 定位属性允许你对元素进行定位。 属性 描述
position 把元素放置到一个静态的、相对的、绝对的、或固定的位置中。
top 定义了一个定位元素的上外边距边界与其包含块上边界之间的偏移。
right 定义了定位元素右外边距边界与其包含块右边界之间的偏移。
bottom 定义了定位元素下外边距边界与其包含块下边界之间的偏移。
left 定义了定位元素左外边距边界与其包含块左边界之间的偏移。
overflow 设置当元素的内容溢出其区域时发生的事情。
clip 设置元素的形状。元素被剪入这个形状之中,然后显示出来。
vertical-align 设置元素的垂直对齐方式。
z-index 设置元素的堆叠顺序。 ############
CSS position 属性
通过使用 position 属性,我们可以选择 4 种不同类型的定位,这会影响元素框生成的方式。 position 属性值的含义: static
元素框正常生成。块级元素生成一个矩形框,作为文档流的一部分,行内元素则会创建一个或多个行框,置于其父元素中。
relative
元素框偏移某个距离。元素仍保持其未定位前的形状,它原本所占的空间仍保留。
absolute
元素框从文档流完全删除,并相对于其包含块定位。包含块可能是文档中的另一个元素或者是初始包含块。元素原先在正常文档流中所占的空间会关闭,就好像元素原来不存在一样。元素定位后生成一个块级框,而不论原来它在正常流中生成何种类型的框。
fixed
元素框的表现类似于将 position 设置为 absolute,不过其包含块是视窗本身。
提示:相对定位实际上被看作普通流定位模型的一部分,因为元素的位置相对于它在普通流中的位置。
###########
CSS 定位机制
CSS 有三种基本的定位机制:普通流、浮动和绝对定位。
########### 1.定位:相对定位
本例演示如何相对于一个元素的正常位置来对其定位。
<style type="text/css">
h2.pos_left{
position:relative;;
left:-20px;
}
h2.pos_right{
position:relative;
left:20px;
}
</style>
</head>
<body>
<h2>这个正常位置</h2>
<h2 class="pos_left"> 这个向左移动</h2>
<h2 class="pos_right">这个标题向右移动</h2>
<p>相对定位会按照元素的原始位置对该元素进行移动。</p>
<p>样式"left:-20px" 从元素的原始左侧位置减去 20像素。</p>
<p>样式 "left:20px" 向元素的原始左侧位置增加 20像素</p>
</body> 2.定位:绝对定位
本例演示如何使用绝对值来对元素进行定位
<style type="text/css">
h2.pos_abs{
position:absolute;
left:100px;
top:150px;
}
</style>
</head>
<body>
<h2 class="pos_abs">这是带有绝对定位的标题</h2>
<p>通过绝对定位,元素可以放置到页面上的任何位置。下面的标题距离页面左侧100px,距离页面顶部150px.</p> </body> 3.定位:固定定位
本例演示如何相对于浏览器窗口来对元素进行定位。 p.one{
position:fixed;
left:5px;
top:5px;
}
p.two{
position:fixed;
top:30px;
right:5px;
}
</style>
</head>
<body>
<p class="one">一些文本</p>
<p class="two">更多的文本。</p>
</body> 4.设置元素的形状
本例演示如何设置元素的形状。此元素被剪裁到这个形状内,并显示出来。
<style type="text/css">
img{
position:absolute;
clip:rect(0px 50px 200px 0px)
}
</style>
</head>
<body>
<p>clip 属性剪切了一副图像:</p>
<p><img src="eg_smile.gif" src="eg_bookasp.gif" width="120" height="128"></p><br/>
<p><img src="eg_smile.gif" src="eg_smile.gif" width="120" height="128"></p>
</body> 5.如何使用滚动条来显示元素内溢出的内容
本例演示当元素内容太大而超出规定区域时,如何设置溢出属性来规定相应的动作。
<style type="text/css">
div{ width:150px;
height:150px;
overflow:scroll;
}
</style>
</head>
<body>
<p>如果元素中的内容超出了给定的宽带和高度属性,overflow属性可以确定是否显示滚动条等行为。</p>
<div>
这个属性定义溢出元素。如果值为 scroll,不论是否需要,用户代理都会提供一种滚动机制。
因此,有可能即使元素框中可以放下所有内容也会出现滚动条。默认值是 visible。
</div> 6.如何隐藏溢出元素中溢出的内容
本例演示在元素中的内容太大以至于无法适应指定的区域时,如何设置 overflow 属性来隐藏其内容。
<style type="text/css">
div{ width:150px;
height:150px;
overflow:hidden;
}
</style>
</head>
<body>
<p>如果元素中的内容超出了给定的宽度和高度属性,overflow 属性可以确定是否显示滚动条等行为。</p> <div>
这个属性定义溢出元素内容区的内容会如何处理。如果值为 scroll,不论是否需要,用户代理都会提供一种滚动机制。
因此,有可能即使元素框中可以放下所有内容也会出现滚动条。默认值是 visible。
</div> 7.如何设置浏览器来自动地处理溢出
本例演示如何设置浏览器来自动地处理溢出。
div{ width:150px;
height:150px;
overflow:auto; #####auto 自动处理
}
</style> 8.垂直排列图象
本例演示如何在文本中垂直排列图象。
<style type="text/css">
img.top{vertical-align:text-top}
img.bottom{vertical-align:text-bottom}
</style>
</head>
<body>
<p>
这是一副<img class="top" border="0" src="eg_smile.gif" />
</p> <p>
这是一幅<img class="bottom" border="0" src="eg_smile.gif" />
</p> 9.Z-index
Z-index可被用于将在一个元素放置于另一元素之后。
<style type="text/css">
img.x{
position:absolute;
left:0px;
top:0px;
z-index:-1;
}
</style>
</head>
<body>
<h1>这是一个标题</h1>
<img class="x" src="eg_smile.gif" />
<p>默认的z-index 是0.z-index-1 拥有更低的优先级。</p>
</body> 10.Z-index
上面的例子中的元素已经更改了Z-index。 ### z-inde 1 区别
<style type="text/css">
img.x{
position:absolute;
left:0px;
top:0px;
z-index:1;
}
</style>
</head>
<body>
<h1>这是一个标题</h1>
<img class="x" src="eg_smile.gif" />
<p>默认的z-index 是0.z-index-1 拥有更低的优先级。</p>
</body> 11.使用固定值设置图像的上边缘
本例演示如何使用固定值设置图像的上边缘。
<style type="text/css">
img{
position:absolute;
top:0px;
}
</style>
</head>
<body>
<h1>This is a Heading</h1>
<img class="normal" src="eg_smile.gif"/>
<p>一些文本。一些文本。</p>
</body>
12.使用百分比设置图像的上边缘
本例演示如何使用百分比值设置图像的上边缘。
<style type="text/css">
img{
position:absolute;
top:5%;
}
</style> 13.使用像素值设置图像的底部边缘
本例演示如何使用像素值设置图像的底部边缘。
<style type="text/css">
img{
position:absolute;
top:0px;
}
</style> 14.使用百分比设置图像的底部边缘
本例演示如何使用百分比值设置图像的底部边缘。
<style type="text/css">
img{
position:absolute;
bottom:5%;
}
</style> 15使用固定值设置图像的左边缘
本例演示如何使用固定值设置图像的左边缘。
<style type="text/css">
img{
position:absolute;
left:100px;
}
</style> 16.使用固定值设置图像的右边缘
本例演示如何使用固定值设置图像的右边缘。
<style type="text/css">
img{
position:absolute;
right:0px;
}
</style> 17.使用百分比设置图像的右边缘
本例演示如何使用百分比值设置图像的右边缘。
<style type="text/css">
img{
position:absolute;
right:5%;
}
</style>

CSS 定位 (Positioning) 实例的更多相关文章

  1. W3School-CSS 定位 (Positioning) 实例

    CSS 定位 (Positioning) 实例 CSS 实例 CSS 背景实例 CSS 文本实例 CSS 字体(font)实例 CSS 边框(border)实例 CSS 外边距 (margin) 实例 ...

  2. CSS 定位 (Positioning)

    CSS 定位 (Positioning) 属性允许你对元素进行定位. CSS 定位和浮动 CSS 为定位和浮动提供了一些属性,利用这些属性,可以建立列式布局,将布局的一部分与另一部分重叠,还可以完成多 ...

  3. (七)CSS定位(Positioning)

    CSS定位属性允许对元素进行定位. 一切皆为框: div.h1或p元素常被称为块级元素,而span和strong等元素成为行内元素,但是可是使用 display 属性改变框的类型,将display设置 ...

  4. CSS 定位 (Positioning)概述

    div.h1 或 p 元素常常被称为块级元素. 这意味着这些元素显示为一块内容,即“块框”. 与之相反,span 和 strong 等元素称为“行内元素”,这是因为它们的内容显示在行中,即“行内框”. ...

  5. CSS定位(Positioning)

    CSS 定位和浮动 CSS 为定位和浮动提供了一些属性,利用这些属性,可以建立列式布局,将布局的一部分与另一部分重叠,还可以完成多年来通常需要使用多个表格才能完成的任务. 一切皆为框 div.h1 或 ...

  6. CSS 定位 (Positioning)学习

    最近被css的定位要搞疯了...下面我总结一下最近学习东西. 先介绍几个概念: 块框:div.h1 或 p 元素常常被称为块级元素.这意味着这些元素显示为一块内容,即“块框”. 行内框:与之相反,sp ...

  7. HTML5学习笔记(八):CSS定位

    CSS 定位 (Positioning) 属性允许你对元素进行定位. 定位和浮动 CSS 为定位和浮动提供了一些属性,利用这些属性,可以建立列式布局,将布局的一部分与另一部分重叠.定位的基本思想很简单 ...

  8. CSS定位(postion)和移动(float)

    5.定位和移动:Positioning(定位)CSS定位属性允许你为一个元素定位.它也可以将一个元素放在另一个元素后面,并指定一个元素的内容太大时,应该发生什么. 元素可以使用的顶部,底部,左侧和右侧 ...

  9. CSS定位属性Position详解

    CSS中最常用的布局类属性,一个是Float(CSS浮动属性Float详解),另一个就是CSS定位属性Position. 1. position:static 所有元素的默认定位都是:position ...

随机推荐

  1. jvm程序执行慢诊断手册

    生产环境最多的几种事故之一就是程序执行慢,如果是web服务的话,表现就是响应时间长.本文分享,从业多年形成的排查守则. 诊断步骤 系统资源查看 首先是系统资源查看,而且必须是在第一步.因为很多事故都是 ...

  2. Python爬虫之Urllib库的基本使用

    # get请求 import urllib.request response = urllib.request.urlopen("http://www.baidu.com") pr ...

  3. AndroidNDK开发中使用CMake编译JNI

    虽然一直在做NDK的开发工作,但是由于项目比较久远,都是使用Makefile进行底层编译,对于目前AndroidStudio官方提供的CMake编译方式并不是很了解,现在学习下这种已经不算新潮的新方式 ...

  4. LeetCode算法题-Arranging Coins(Java实现)

    这是悦乐书的第229次更新,第241篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第96题(顺位题号是441).您想要以楼梯形状形成总共n个硬币,其中每个第k行必须具有恰 ...

  5. 【算法】LeetCode算法题-Valid Parentheses

    这是悦乐书的第147次更新,第149篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第6题(顺位题号是20),给定一个只包含字符'(',')','{','}','['和'] ...

  6. puppet 横向扩展(一)

    目录 1. 概述 2. 实验环境 3. 实验步骤 3.1. 创建puppetmaster的rack环境 3.2. 配置文件设置 3.3. 补充说明 3.4. 测试配置结果 3.4.1. 默认的负载均衡 ...

  7. Should we ban guns 英语禁枪议论文

    Should we ban guns ? 我们应该禁枪吗? 英语议论文 Should we ban guns? Author:Pleiades_Antares(www.cnblogs.com/iris ...

  8. 《Java大学教程》—第18章 高级图形编程

    自测题:1.    在图形应用程序中为用户提供选择的多种方式:P433下拉菜单(pull-down menu).弹出式菜单(pop-up menu).对话框窗口(dialogue window).单选 ...

  9. wangedit

    <template> <el-row id="AddRoom"> <el-col :span="5">.</el-co ...

  10. SQL IN 操作符

    IN 操作符 IN 操作符允许我们在 WHERE 子句中规定多个值. SQL IN 语法 SELECT column_name(s) FROM table_name WHERE column_name ...