`
ningzhisheng
  • 浏览: 12262 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

CSS教程14 CSS网页布局Page Layout

阅读更多
使用CSS布局非常简单,如果你习惯使用tables布局,可能开始时有点困难,但其实很容易,事实上只是观念的不同。
  你需要把网页的每个部分看成独立的块,你可以绝对或相对定位块。

Positioning 定位

  positon属性可以指定元素为absolute,relative,static或是fixed。
  static是元素默认属性,按HTML出现的先后顺序。
  relative比较像static,但元素可以使用top,right,bottom和left设定初始属性。
  absolute把元素从HTML里面拉出,一切由它自己决定,在这里,绝对定位元素可以使用top,right,bottom,left定位在任何地方。
  fixed行为像absolute,但它绝对定位的元素参照浏览器窗口与网页没有关系。所以,理论上,fixed元素可以固定在屏幕上当页面滚动时。为什么说是理论上的?因为IE7以下的浏览器不支持。

  使用绝对定位布局
  可以使用绝对定位创建传统的两列布局,如下:

Example Source Code [www.52css.com]
<div id="navigation">
    <ul>
        <li><a href="this.html">This</a></li>

        <li><a href="that.html">That</a></li>
        <li><a href="theOther.html">The Other</a></li>
    </ul>

</div>
<div id="content">
    <h1>Ra ra banjo banjo</h1>
    <p>Welcome to the Ra ra banjo banjo page. Ra ra banjo banjo. Ra ra banjo banjo. Ra ra banjo banjo.</p>
    <p>(Ra ra banjo banjo)</p>

</div>
  上面加上CSS:

Example Source Code [www.52css.com]
#navigation {
    position: absolute;
    top: 0;
    left: 0;

    width: 10em;
}
#content {
    margin-left: 10em;
}
  上面导航条设定在左边,宽度是10em。因为导航条是绝对定位,所以流动的页面上什么也不动,需要设定内容的左边margin等于导航条的宽度。

  真是简单。你没有限制这两列的距离,使用聪明的布局,你可以随心所欲安排许多块。如果你想添加第三列,比如:

Example Source Code [www.52css.com]
#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 */
}
  最后阶段去绝对定位元素,因为它们独立存在,无法正确了解它们哪里结束。如果你使用上面的例子,所有的页面有小的导航条和大的内容区域到可以,但是,特别是宽度和大小使用相对值,你必须经常放弃定位的希望,比如位于元素最下面的底部布局。如果你想定位底部,采用浮动模式比绝对定位好。

Floating 浮动

  浮动元素可以在一条线上移动。
  浮动一般使用在定位页面里的小型元素,但也可使用在大块里,比如导航。
  上面的HTML例子使用下面CSS:

Example Source Code [www.52css.com]
#navigation {
    float: left;
    width: 10em;
}
#navigation2 {
    float: right;
    width: 10em;
}
#content {
    margin: 0 10em;
}
  如果你不希望接下来的元素包围浮动对象,可以使用clear属性。clear:left清除浮动在左边的元素,clear:right清除浮动在右边的元素,clear:both清除所有。如果你想添加底部footer,可以像下面:

Example Source Code [www.52css.com]
#footer {
    clear: both;
}
  footer将在所有列下面,不管它们的长度如何。
  这篇介绍了定位和浮动的基本情况,强调页面的大块,但记住,上面方法可以运用到块里面的任何元素。通过组合使用position,floating,margins,padding和border,你可以表现出任何网页设计,table布局能做的CSS没有什么不能做。
  使用表格布局的理由就是考虑古老的浏览器。CSS的优势在于拥有很高的可用性,而且体积上只有使用table布局的部分大小。
分享到:
评论

相关推荐

    CSS40个布局实例

    关于CSS40个布局实列CSS布局大全:40多个教程,提示,例子和最佳实践 CSS布局教程 1-Three column fixed layout structure using CSS- 这篇文章解释了如何显示... 2-Design page layout using CSS- 如何设计页面布局教程。

    css-pro-layout:CSS库,用于构建响应式和可自定义的布局

    CSS Pro布局 CSS库,用于构建响应式和可自定义的页面布局 文献资料 有关完整文档,请访问 入门 您可以使用NPM或Yarn安装CSS专业版 NPM npm install css-pro-layout 纱 yarn add css-pro-layout 将css-pro-layout....

    经典的24款Page翻页css代码

    4. CSS3新特性:24款经典代码可能利用了CSS3的一些新特性,如渐变(gradients)、阴影(shadows)、过渡(transitions)、动画(animations)以及多列布局(multi-column layout)。这些特性使得翻页效果更加平滑和...

    css-Layout-page2

    "css-Layout-page2"这个标题暗示我们主要探讨的是关于CSS布局的第二部分,可能是一个系列教程或者项目的第二阶段。描述中的"css-Layout-page2"同样强调了这一主题,但没有提供具体细节。不过,我们可以基于这个话题...

    高仿FlexLayout布局小程序源码.zip

    FlexLayout是一种强大的CSS布局模式,它允许开发者在不同屏幕尺寸和方向上灵活地组织元素,从而实现响应式设计。在小程序中,这种布局方式尤其重要,因为小程序需要在各种手机设备上展示良好,适应不同的屏幕尺寸和...

    最完整CSS语义化标准(图文版)

    3. 框架布局:`layout.css`,定义页面的布局结构。 4. 字体样式:`font.css`,设置字体和排版。 5. 链接样式:`link.css`,定义链接的样式。 6. 打印样式:`print.css`,针对打印场景定制样式。 7. 常用类名如:`...

    CSS Quick Syntax Reference

    The CSS Quick Syntax Reference is a 150-page syntax reference to the Cascading Style Sheet specification and style sheet language. It presents the essentials of CSS in a well-organized format that can...

    CSS+2.0样式表中文手册

    2. **页面布局(Page Layout)**:使用浮动、定位和多列布局技术,开发者可以创建复杂而灵活的页面结构。 3. **美化UI(UI Enhancement)**:通过控制字体、颜色、阴影等视觉效果,CSS2.0可以极大地提升用户界面的...

    CSS Cookbook, 3rd Edition

    Work with web typography and page layout Create effects for images and other page elements Learn techniques for configuring lists, forms, and tables Design effective web navigation and create custom ...

    Flexbox.in.CSS.2017.5.pdf

    Layout designers rejoice: now you can greatly simplify the task of laying out your web page or application with Flexbox, the CSS Flexible Box Module. In this concise guide, author Estelle Weyl shows ...

    网页设计中DIVCSS命名规则.docx

    - 主要样式:master.css,布局:layout.css,专栏:columns.css,字体:font.css,打印样式:print.css,主题:themes.css。 4. **CSS命名规范**: - 使用全小写字母,多词之间用"-"连接,如user-list。 - div...

    Web-Page-Layout:Bigginer的简单网页布局

    在"Web-Page-Layout-main"这个压缩包中,可能包含了示例代码或教程,帮助初学者了解和实践上述布局技术。通过实践这些基本布局方法,初学者能够创建出有组织且美观的网页,为进一步学习更高级的前端开发技术打下坚实...

    Beginning CSS3 (pdf)

    the language that in the hands of a skilled designer turns the ugly duckling of unadorned ... In one sense, they’re right. Instead of one massive speci cation, CSS3 has been broken up into more than 40 ...

    html 版 CSS中文速查手册

    heightmax-heightmin-heightwidthmax-widthmin-width 布局 Layout clearfloatclipoverflowoverflow-xoverflow-ydisplayvisibility 外补丁 Margins marginmargin-topmargin-rightmargin-bottommargin-left ...

    CSS The Definitive Guide 4th Edition

    If you’re a web designer or app developer interested in sophisticated page styling, improved accessibility, and saving time and effort, this book is for you. This revised edition provides a ...

Global site tag (gtag.js) - Google Analytics