实例详解CSS网页布局原理

2016-02-19 16:13 8 1 收藏

今天图老师小编给大家展示的是实例详解CSS网页布局原理,精心挑选的内容希望大家多多支持、多多分享,喜欢就赶紧get哦!

【 tulaoshi.com - Web开发 】

  DIV+CSS布局

  用CSS来布局很容易。如果你已经习惯用表格布局的话,起先会感觉比较困难。其实不难,只不过动机不同,并且在实践中更有意义。

  你可以把这一页面的各个部分当作独立的版块来看待,无论你选择哪一块。你可以绝对或相对地用彼块取代此块。

  定位

  定位属性position用于定义一个元素是否absolute(绝对),relative(相对),static(静态),或者fixed(固定)。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  static值是元素的默认值,它会按照普通顺序生成,就如它们在HTML的出现一般。

  relative很像static,但可用top、right、bottom和left属性来偏移原始位置。

  absolute使元素从HTML普通流中分离出来,并把它送到一个完全属于自己的定位世界。在这个稍微疯狂的世界,这个绝对的元素可以放置到任何地方,只要设置了top、right、bottom和left的值。

  fixed的行为也很像absolute,但参考于浏览器窗口相对于页面而放置绝对的元素,所以,理论上,当页面滚动的时候,固定元素完全保持在浏览器视区中。但这个只在Mozilla和Opera中支持,IE中不支持。
  用绝对定位布局

div id="navigation" 
ul 
lia href="this.html"This/a/li 
lia href="that.html"That/a/li 
lia href="theOther.html"The Other/a/li 
/ul 
/div 
div id="content" 
h1www.devdao.com/h1 
pWelcome to http://www.devdao.com/p 
p(www.devdao.com)/p 
/div

  可以用绝对定位来创建一个传统两列布局,只要在HTML中使用如下面的类似规则:

  并且应用如下的CSS:

  #navigation { position: absolute; top: 0; left: 0; width: 10em; } #content { margin-left: 10em; }

  你将看到,长度为10em的导航条被设置在左边。因为导航是绝对定位的,对页面的其他部分的流动不会有任何影响,所以所需要做的只是把内容区域的左边界宽度设置为与导航条宽度一样就可以了。

  实在是太容易了!然而你并不受这个两列方法的限制。用精明的定位,你可以布置你所如你所需的更多的块。比如,你需要增加第三列,可以为HTML增加“navigation2”块并且应用如下CSS:

  #navigation { position: absolute; top: 0; left: 0; width: 10em; } #navigation2 { position: absolute; top: 0; right: 0; width: 10em; } #content { margin: 0 10em; /* setting top and bottom margin to 0 and right and left margin to 10em */ }

  绝对定位元素的唯一副作用是,因为它们生活自己的世界里,没有办法精确决定它们在哪儿结束。如果你使用上面的例子在一个少导航和多内容区域,没有什么问题,但是,特别是使用长度和宽度的相对值时,经常得放弃在下面放置任何事物如脚注的希望。如果真的要做,与其绝对定位它们,不如浮动它们。

  浮动

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  浮动将移动一个元素到同一线上的左边或者右边,而周围也会有内容浮动。

  浮动经常用在定位一个页面内的小型的元素(在本站的原始默认CSS中HTML初级指南和CSS初级指南的“下一页”连接就是浮动到右边的。同样参阅伪元素中的:first-letter例子),但同样可以用在更大的块中,比如导航列。

  拿下面的HTML例子,可以应用随后的CSS:

  #navigation { float: left; width: 10em; }
  #navigation2 { float: right; width: 10em; }
  #content { margin: 0 10em; }

  如果不希望下一个元素环绕浮动对象,可以使用clear(清除)属性。clear: left将清除左边元素,clear: right将清除右边元素,而clear: both会清除左边和右边。所以,举个例子,你需要一个页面脚注,你可以用id“footer”为HTML增加一个块,然后使用如下的CSS:

  #footer { clear: both; }

  搞定了。一个脚注会出现在所有列的下边,不管任何一个列有多长。

  注意

  上面已经大体上介绍了地位和浮动,着重强调了页面的“大”块,但请记住,这些方法也可以用在这些块内的任何元素。综合定位、浮动、边界、补白和边框,可以再现任何的版式设计,在布局方面,没有CSS完成不了表格所能完成的的事情。

  使用表格布局的唯一理由是你试图适应古老的浏览器。这也是CSS实际上显示其先进的地方──在文件大小上,高易用性的页面只相当基于表格的页面的一小部分。

来源:http://www.tulaoshi.com/n/20160219/1611377.html

延伸阅读
标签: Web开发
从这件事证明了,我专业知识欠缺很多,还需要持续学习,静下心来吧。  新进的公司,接触新的东西,一切都让我倍感紧张。很久没有接触设计的东西了,突然上手就要做界面,心里还是很忐忑的。 贴一下Card的这个界面。    以前很少使用这类的总宽度自适应100%,两列布局,一列固定,一列自适应的,于是,有点头大。 搜索...
标签: Web开发
CSS布局中,一个重要的标签 DIV ,DIV是XHTML所支持的标签,DIV是一个容器,所有的XHTML标签对象都可以称为是一个容器.如 divcontent/div,h1titles/h1.... div代码的书写格式: div id="id 名称"[...]/div div class="class名称"[...]/div 注:同一个名称的id值,在当前的XHTML页面中,只日须使用一次,class名称可以重复使用...
标签: Web开发
用CSS 来布局很容易。如果你已经习惯用表格布局的话,起先会感觉比较困难。其实不难,只不过动机不同,并且在实践中更有意义。 你可以把这一页面的各个部分当作独立的版块来看待,无论你选择哪一块。你可以绝对或相对地用彼块取代此块。 定位 定位属性position用于定义一个元素是否absolute(绝对),relative(相对),static(静态),或...
标签: Web开发
看这个网页的底部,为什么会跑到那儿去呢?即使内容很少的情况下,它也始终在页面的底部。 否则页面底部将留下大量空白。 下面是它实现的代码: div id="wrap"     div id="main" class="clearfix"         div id="content"  &...
标签: Web开发
你正在学习CSS布局吗?是不是还不能完全掌握纯CSS布局?通常有两种情况阻碍你的学习: 第一种可能是你还没有理解CSS处理页面的原理。在你考虑你的页面整体表现效果前,你应当先考虑内容的语义和结构,然后再针对语义、结构添加CSS。这篇文章将告诉你应该怎样把HTML结构化。 另一种原因是你对那些非常熟悉的表现层属性(例如:ce...

经验教程

33

收藏

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