`

CSS overflow属性详解

阅读更多

 

摘自:http://paranimage.com/css-overflow-attribute/

 

检索或设置当对象的内容超过其指定高度及宽度时如何管理内容。
所有对象的默认值是 visible ,除了 textarea 对象和 body 对象的默认值是 auto 。设置 textarea 对象此属性值为 hidden 将隐藏其滚动条。

overflow属性有四个值:visible (默认), hidden, scroll, 和auto。同样有两个overflow的姐妹属性overflow-y 和overflow-x,它们很少被采用。

Visible

如果你不设置overflow属性,则默认的overflow属性值就是visible。所以一般而言,并没有什么理由特别的设定overflow的属性为visible除非你想覆盖它在其它地方被设定的值。

overflow visible CSS Overflow属性详解

这里需要记住的重要的事情是,尽管盒子外面的内容是可见的,内容并不会影响页面的工作流。比如:

overlap CSS Overflow属性详解

一般来说,你至少不用为里面的内容为文字的盒子设置固定的高度,这样就不会遇到这种情况了。

Hidden

默认值visible的相反的值就是hidden。它会将所有超出盒子的所有内容都给隐藏掉。

css overflow hidden CSS Overflow属性详解

这对应付使用动态的内容,而且可能会由于内容溢出而引起一些布局上的问题的确很有用。尽管如此,请记住用此方法隐藏的内容将彻底的看不到(除非去查看源代码)。 比如有的用户设置他们的浏览器的默认字体比你预期的要大些,你会将一些文字推到盒子的外面然后完全的隐藏之……

Scroll

设置一个盒子的overflow值为scroll将会隐藏掉渲染到盒子之外的内容,但是它将会提供一个滚动条在盒子内部滚动,从而可以查看剩下的内容。

css scroll CSS Overflow属性详解

值得注意的是,使用scroll将会同时产生水平和垂直两个滚动条,就算内容只需要其中一个。

Auto

overflow的auto值很像scroll,它唯一解决的是在你不需要的时候也会出现滚动条的问题。

css overflow auto CSS Overflow属性详解

清除浮动

设置overflow的一个更流行的用处是,说也奇怪,清除浮动。设置overflow并不会在该元素上清除浮动,它将清除自己(self-clear)。意思就是,应用了overflow(autohidden)的元素,将会扩展到它需要的大小以包围它里面的浮动的子元素(而不是叠了起来(collapsing)),假设未定义高度。就像这样:

overflow float CSS Overflow属性详解

这里有更多关于浮动的细节文章关于浮动的一切

跨浏览器的烦恼

就像CSS中的很多东东,overflow有很多的跨浏览器的蹊跷的事情。比如这些:

滚动条在盒子里面还是外面?

firefox将其放到盒子外面,而IE则将其放到里面。我认为只有IE是对的(它应该在里面的)。
sizeofbox CSS Overflow属性详解
看清楚这个明显的不同。

IE 8 扩展盒子的bug

IE8有很多有趣的新bug,包括一些非常严重的隐藏在网页中的。这里有更多的关于IE8的overflow的bug的介绍

破坏浮动布局

IE 6, 7 和 8都会扭曲默认的overflow visible值并将水平的扩展一个盒子一匹配内容(比如图片)。 这对使用浮动列布局的结构非常痛苦,而且单个扩展的列就能够将其它列挤下去并使布局乱掉!

visible mess CSS Overflow属性详解

滚动条能用CSS控制吗?

IE过去在较老的版本中允许这样,但是之后就收敛了。比如许多表单元素,滚动条就不允许使用CSS控制。我在它是否是件好事情上没有任何具体的意 见,但是我可以说,在网站的所有内容上使用滚动条是很丑陋的和俗气的。如果你需要一个美化的滚动条,你或许需要寻找javascript来模拟。

IE 技巧

无论是否需要,IE都会一直显示一个垂直的滚动条,这对预防水平跳动是有些作用的,但并非总是可取的。要想在IE中移除它,可以在body元素中设置overflow为auto。

分享到:
评论

相关推荐

    CSS浮动属性Float详解 什么是CSS Float?

    CSS 浮动属性 Float 详解 CSS 浮动属性 Float 是一种重要的定位属性,允许页面元素浮动在其他元素旁边。Float 属性可以取四个值:Left、Right、None 和 Inherit。其中,Left 和 Right 分别浮动元素到左边和右边,...

    详解CSS3:overflow属性

    overflow为溢出(容器),当内容超出容器时只需添加overflow属性值为hidden, 就可以把超出容器的部分隐藏起来; 如果内容超出容器却又不想其隐藏时可以将其属性值设置为auto; overflow:auto 属性如果超出就出现...

    css文件

    #### CSS Overflow 属性详解 `overflow`属性用于控制溢出内容的显示方式,常见的值有`visible`、`hidden`、`scroll`和`auto`。 #### CSS Position 详解 `position`属性定义元素的定位方式,包括`static`、`...

    DIV+CSS布局:CSS浮动float属性详解[归纳].pdf

    CSS浮动float属性详解 在Web开发中,布局是非常重要的一方面,浮动float属性是CSS布局中非常关键的属性。通过对浮动float属性的理解和掌握,我们可以更好地实现网页的布局和排版。 Float浮动属性基本释义 float...

    CSS 属性详解 - 继承、层叠与类型

    本文全面解析了 CSS 中有关元素隐藏、继承属性、层叠规则以及不同显示类型的概念与用法。主要内容包含了 CSS 属性是如何遗传的,哪些常见属性能够从祖先继承,如何解决多重样式的冲突并理解 CSS 权重机制;阐述了 ...

    CSS浮动属性Float详解[收集].pdf

    CSS浮动属性Float详解 CSS浮动属性Float是CSS中的一种定位方式,它可以使元素在网页流中浮动,周围的元素可以围绕它排列。浮动元素仍然是网页流的一部分,这与使用绝对定位的页面元素不同。绝对定位的页面元素被从...

    css中text-overflow属性与文本截断详解

    在CSS中,`text-overflow`属性是用来处理文本溢出情况的一个重要工具,尤其是当文本在有限的容器内无法完全显示时。这个属性通常与`overflow`和`white-space`属性一起使用,来实现文本的截断和省略。本文将深入探讨`...

    css浮动 float属性详解

    【CSS浮动(float属性)详解】 一、浮动的概念 浮动(float)是CSS布局中的一个重要概念,它使得元素能够脱离正常文档流,向左或向右移动,直至其边框接触到包含框或另一个浮动元素的边框。这个特性最初设计是为了...

    CSS3教程详解(完整教学详解) PPT幻灯片.rar

    **CSS3教程详解** 在网页设计领域,CSS3(层叠样式表第三版)是用于控制网页元素样式的重要技术,它的出现极大地提升了网页的视觉效果和用户体验。本教程旨在为Web前端开发人员提供一个全面的CSS3学习指南,无论你...

    css兼容性详解

    ### CSS兼容性详解 #### 一、CSS Hack技术 **CSS Hack**是一种针对不同浏览器或浏览器版本编写特定样式的技巧,以确保网页在各种浏览器下的表现一致。随着浏览器技术的发展,许多Hack方法已经逐渐不再适用。 ####...

    CSS3属性.docx

    【CSS3属性详解】 CSS3(Cascading Style Sheets Level 3)是CSS规范的第三版,它引入了许多新特性,极大地丰富了网页设计。以下是一些关键的CSS3属性的详细说明: 1. **border-radius**: 这个属性允许你创建圆角...

    CSS属性大全完整版网页设计前台设计程序员必备手册

    #### CSS属性详解 ##### 字体样式(Font Properties) 1. **`font-size`**:定义文本大小,可使用相对单位如`em`或绝对单位如`px`。 2. **`font-style`**:设置字体风格,如斜体(`italic`)、倾斜(`oblique`)或...

    css详解box-sizing.zip

    综上所述,"css详解box-sizing.zip"这个压缩包是一个全面学习和理解CSS Box Sizing特性的资源集合,包括了理论解释、实例演示和相关联的CSS属性,对于想要深入掌握CSS布局的开发者来说非常有价值。通过这些资料,...

    详解CSS中zoom属性或overflow:auto属性清除浮动的作用

    为了解决这个问题,我们可以利用`zoom`属性(在IE浏览器中)和`overflow:auto`属性(在非IE浏览器中)来实现浮动元素的清除。 `zoom`是Internet Explorer浏览器的一个专有属性,它允许我们设置或检索对象的缩放比例...

    2.2.42 CSS盒子属性(二)元素高度:height.pdf

    【CSS盒子模型与高度属性详解】 CSS(Cascading Style Sheets)是用于描述HTML或XML(包括如SVG、MathML等各种XML方言)文档样式的样式表语言。在CSS中,盒模型是理解元素布局的关键,它包括元素的内容、内边距...

    css与html标签详解.docx

    【CSS与HTML标签详解】 CSS(层叠样式表)是一种用于描述HTML或XML(包括如SVG、MathML等各种XML方言)文档样式的样式语言。它允许我们通过分离内容和表现来设计网页,使得网页的布局和外观更加灵活和可控。 **CSS...

    css属性大全txt文件

    ### CSS属性详解 #### 字体(Font)属性 1. **`font-size`**: 设置文本字体大小。 - `x-large`: 极大字体大小。 - `xx-small`: 极小字体大小。 - `PX`: 使用像素作为单位设置字体大小。 - `PD`: 可能是指...

Global site tag (gtag.js) - Google Analytics