`
Virgo_S
  • 浏览: 1153974 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

13、CSS网页布局Page Layout

    博客分类:
  • CSS
阅读更多
  使用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以下的浏览器不支持。

  使用绝对定位布局
  可以使用绝对定位创建传统的两列布局,如下:
<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:
#navigation {
    position: absolute;
    top: 0;
    left: 0;

    width: 10em;
}
#content {
    margin-left: 10em;
}

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

  真是简单。你没有限制这两列的距离,使用聪明的布局,你可以随心所欲安排许多块。如果你想添加第三列,比如:
#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:
#navigation {
    float: left;
    width: 10em;
}
#navigation2 {
    float: right;
    width: 10em;
}
#content {
    margin: 0 10em;
}

  如果你不希望接下来的元素包围浮动对象,可以使用clear属性。clear:left清除浮动在左边的元素,clear:right清除浮动在右边的元素,clear:both清除所有。如果你想添加底部footer,可以像下面:
#footer {
    clear: both;
}

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

相关推荐

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

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

    CSS40个布局实例

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

    经典的24款Page翻页css代码

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

    css-Layout-page2

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

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

    "Web-Page-Layout: Bigginer的简单网页布局"这一主题主要关注HTML(超文本标记语言)在构建网页布局中的应用。 HTML是网页内容的结构框架,通过不同的标签定义了网页的各种元素,如标题、段落、图像、链接等。在...

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

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

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

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

    css基础教程(经典)

    14. **网页布局(Page Layout)** CSS布局技术包括流式布局、网格布局、弹性布局(Flexbox)和网格布局(CSS Grid)。初学者通常从传统的浮动布局(`float`)开始学习,然后逐渐掌握更现代的布局方法。 通过深入...

    CSS+2.0样式表中文手册

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

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

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

    wksp-module-1-htmlcss-3-css-page-layout

    1.3-CSS:页面布局-讲习班练习1至练习12 每个练习文件夹都包含一个带有练习参数的自述文件。练习13至练习18(可选) 以下链接中的练习将帮助您使用CSS选择器,CSS Grid和Flexbox进行更多练习。 当前,没有为这些练习...

    html + css 还原qq音乐静态页面,仿qq音乐HTML页面

    - `盒模型`(Box Model)是理解CSS布局的关键,包括`content`、`padding`、`border`和`margin`。 3. **布局技术**: - 流动布局(Block Layout)是网页的基本布局方式,元素默认按行排列。 - 浮动布局(Float ...

    css布局实战之单页练习

    在CSS布局领域,单页(Single Page Application, SPA)练习是一项重要的技能,它涉及到网页设计、用户体验和前端性能优化等多个方面。在这个主题中,我们将深入探讨CSS如何在单页应用中构建高效、响应式的布局。 ...

    html 版 CSS中文速查手册

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

    div+css学习总结.doc

    DIV+CSS 是一对强大的前端开发组合, DIV responsible for structuring content on the web page, while CSS is responsible for styling and layout. In this summary, we will cover the basics of DIV+CSS and ...

    responsive_webpage_example1_page_mobile_web_

    描述中的“Source code for responsive web page layout dimension”进一步明确了这是一个关于响应式网页布局尺寸调整的源代码。 在标签部分,“page”指网页本身,“mobile”强调了这是针对移动设备的设计,而...

    Company_Home_Page_FlexBox:使用flexbox设计和构建公司主页的布局

    技术: HTML CSS FlexBox布局吉特项目目标In this project, you'll be using flexbox to design and build the layout for a company's homepage. You can choose to build a new homepage for an existing company ...

    WEB前端面试——常见CSS知识点

    CSS是一种标记语言,用于描述网页的样式和布局。以下是常见的CSS知识点: 一、CSS盒子模型 CSS盒子模型分为标准盒模型(content-box)和怪异盒模型(border-box)。标准盒模型的宽度计算公式为:width + (padding-...

Global site tag (gtag.js) - Google Analytics