CSS浮动布局基础

2016-02-19 13:39 5 1 收藏

今天图老师小编要向大家分享个CSS浮动布局基础教程,过程简单易学,相信聪明的你一定能轻松get!

【 tulaoshi.com - Web开发 】

基于浮动的布局利用了float(浮动)属性来并排定位元素,并在网页上创建列。可以利用这个属性来创建一个环绕在周围的效果,例如环绕在照片周围,但是当你把它应用到一个div标签上时,浮动就变成了一个强大的网页布局工具。float属性把一个网页元素移动到网页(或者其他包含块)的一边。任何显示在浮动元素下方的HTML都在网页中上移,并环绕在浮动周围。


  float属性接受3种不同值之一:left(左)、right(右)和none(无)。要把一张图片移到网页的右边,可以创建这个类样式,并把它应用到img标签上:

.floatRight { float: right; }
  相同的属性应用到一个充满内容的div标签上也可以创建一个工具条:

#sidebar { 
    float: left;
    width: 170px;}
  图11-3展示了这两个样式的作用。

  注意:none值关闭了任何浮动,把元素像一个正常的没有浮动的元素一样定位。这只有已经应用到元素的浮动无效时才有用。你可能有一个应用了特定类如“sidebar”的元素,这个元素浮动到右边。但在网页中,你可能要带有这个类的元素不要浮动,但是又要放置在网页流之内,就如这个“注意”方框。通过用float: none创建一个更具体的CSS选择器可以防止这个元素浮动。


  如图11-3的一个简单的两列设计只需要几个步骤。

  1. 把每一列都包围在一个带有ID或者class属性的div标签里面。

  在图11-3中,列在左边工具条中的新闻项目被包围在一个div里面——div id="news",并且主内容在另一个div里面——div id="main"。

  2. 把工具条div浮动到右边或者左边。

  当你使用浮动时,源顺序(添加HTML到一个文件的顺序)很重要。浮动元素的HTML必须显示在要包围它的元素的HTML前面。

  图11-4展示了3个两列的设计。左边的图表展示了网页HTML的源顺序:给banner的一个div,后面跟着sidebar的div,最后是main content的div。在右边,你可以看到实际的网页布局。在HTML中sidebar在main content前面,因此它可以浮动到左边(上图,下图)或者右边(中图)。


  3. 给浮动的sidebar设定一个宽度。

  除非你正浮动一张带有预设宽度的图片,否则你应该始终给浮动设定一个宽度。这样,给浮动元素创建一个固定的尺寸,使浏览器给其他内容腾出了包围该位置的空间。
  这个宽度可能是一个固定的尺寸比如170px或者10em。你也可以对基于浏览器窗口宽度的弹性设计使用百分比。如果sidebar是20%宽,浏览器窗口是700px宽,那么sidebar将是140px宽。但是如果访问者调整窗口尺寸为1000px,那么sidebar也增大为200px。固定宽度的sidebar更容易设计,因为你不必考虑sidebar伸展时的所有不同宽度。然而,百分比让你在两列之间保持相同的比例,可以使其更好看。
  注意:当整体的网页设计是一个固定宽度时,sidebar的百分比宽度值也取决于包含元素的固定宽度。这个宽度不取决于窗口尺寸,当浏览器窗口改变尺寸时它不会发生改变。

  4. 给main content添加一个左边距。

  如果sidebar比网页上的其他内容更短,来自主列的文本包围sidebar的下方,破坏了两个并排列的展现效果。添加一个左边距等于或者大于缩进网页主要内容的sidebar宽度,产生一个第二列的幻觉效果:

#main { margin-left: 180px ; }
  顺便说一下,使左边距比sidebar的宽度略大通常是个好主意:这样产生了一些空的空间——一个白色的——在两个元素之间。因此,当利用百分比来设定sidebar的宽度时,给左边距设定一个稍微大一些的百分比值。

  没有必要去避免给main content的div设计宽度,因为浏览器只要扩大到适合现有的空间。即使要一个固定宽度的设计,也不必给主内容的div设计宽度,就如你将在下一节中所看到的。

来源:https://www.tulaoshi.com/n/20160219/1604883.html

延伸阅读
标签: Web开发
CSS教程栏目中汇集了大量的CSS知识,这些知识已经非常全面了,但很多CSSer新手初来本站,依然云里雾里,现整理一些DIVCSS网页布局常用的一些基础知识,供大家学习,欢迎补充及提一些建议。 CSS命名规范 一.文件命名规范 全局样式:global.css; 框架布局:layout.css; 字体样式:font.css; 链接样式:link.css; 打印样式:print.css; 二....
在CSS网页布局开发中,会有很多小技巧,新手朋友往往对此很不熟悉。在某一两个小问题上,或许纠缠很长时间才能搞明白,虽然在很多的文档中,多次提及过这方面的内容,但依然有很多朋友在这些问题上犯错。我们今天看看这些CSS技巧,认真读一读,或许您并不能完全理解,您可以在本站进行搜索,扩展您所想要得到的知识,相信您会有很多收获! ...
标签: Web开发
一个多月前总结了《清理浮动的全家》,当时看了之后没什么新鲜的东西也就忽略了,今天偶然又翻到那篇文章,想到了另外一个的方法(N久前在书店翻到的),在网上没看到有人提起过,写出来大家一起讨论下。 HTML: CSS: Firefox下效果:   可见,ul的黄色背景并没有显示出来。 重点来了: 在CSS理加上如下代码 ...
标签: Web开发
webjx.com的CSS教程栏目中汇集了大量的CSS知识,这些知识已经非常全面了,但很多CSSer新手初来本站,依然云里雾里,现整理一些DIVCSS网页布局常用的一些基础知识,供大家学习,欢迎补充及提一些建议。 CSS命名规范 一.文件命名规范 全局样式:global.css; 框架布局:layout.css; 字体样式:font.css; 链接样式:link.css; 打印样...
标签: Web开发
Source Code to Run html head style type="text/css" !-- body {  margin: 0;  padding: 0;  font-size:12px; } #layout{  background-color: #FFFFFF;  border: 0;  width: 400px;  margin: 0 auto; } .list{  margin: 0px 10px 20px;  text-align: left; } .list ul{  list-style-ty...

经验教程

587

收藏

18
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部