当前位置: 代码迷 >> HTML/CSS >> 几个经典的css技能
  详细解决方案

几个经典的css技能

热度:371   发布时间:2012-11-22 00:16:41.0
几个经典的css技巧

使用 line-height 垂直居中

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=line-height%3A24px%3B" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. line-height:24px;??
line-height:24px;

?

?

使用固定宽度的容器并且需要一行垂直居中时,使用 line-height 即可(高度与父层容器一致),更多的垂直居中总结可以看这里。

清除容器浮动

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=%23main%20%7B%0A%20%20%20%20overflow%3Ahidden%3B%0A%7D" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. #main?{??
  2. ????overflow:hidden;??
  3. }??
#main {
    overflow:hidden;
}

?

?

期前也提到过这样的问题,更多信息可以看这里。

不让链接折行

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=a%20%7B%0A%20%20%20%20white-space%3Anowrap%3B%0A%7D" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. a?{??
  2. ????white-space:nowrap;??
  3. }??
a {
    white-space:nowrap;
}

?

?

上面的设定就能避免链接折行,不过个人建议长链接会有相应的这行(有关换行方面的讨论,参看圆心的记录)。

始终让 Firefox 显示滚动条

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=html%20%7B%0A%20%20%20%20overflow%3A-moz-scrollbars-vertical%3B%0A%7D" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. html?{??
  2. ????overflow:-moz-scrollbars-vertical;??
  3. }??
html {
    overflow:-moz-scrollbars-vertical;
}

?

?

更多的 Mozilla/Firefox 私有 CSS 属性可以参考这里。需跨浏览器的支持,也可以使用

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=body%2C%20html%20%7B%0A%20%20%20%20min-height%3A101%25%3B%0A%7D" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. body,?html?{??
  2. ????min-height:101 %;??
  3. }??
body, html {
    min-height:101%;
}

?

?

使块元素水平居中

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=margin%3A0%20auto%3B" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. margin: 0 ?auto;??
margin:0 auto;

?

?

其实就是

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=margin-left%3A%20auto%3B%0Amargin-right%3A%20auto%3B" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. margin-left:?auto;??
  2. margin-right:?auto;??
margin-left: auto;
margin-right: auto;

?

?

这个技巧基本上所有的 CSS 教科书都会有说明,别忘记给它加上个宽度。Exploer 下也可以使用

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=body%7B%0A%20%20%20%20text-align%3A%20center%3B%0A%7D" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. body{??
  2. ????text-align:?center;??
  3. }??
body{
    text-align: center;
}

?

?

然后定义内层容器

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=text-align%3A%20left%3B" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. text-align:?left;??
text-align: left;

?

?

恢复。

隐藏 Exploer textarea 的滚动条

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=textarea%20%7B%0A%20%20%20%20overflow%3Aauto%3B%0A%7D" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. textarea?{??
  2. ????overflow:auto;??
  3. }??
textarea {
    overflow:auto;
}

?

?

Exploer 默认情况下 textarea 会有垂直滚动条(不要问我为什么)。

设置打印分页

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=h2%20%7B%0A%20%20%20%20page-break-before%3Aalways%3B%0A%7D" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. h2?{??
  2. ????page-break-before:always;??
  3. }??
h2 {
    page-break-before:always;
}

?

?

page-break-before 属性能设置打印网页时的分页。

删除链接上的虚线框

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=a%3Aactive%2C%20a%3Afocus%20%7B%0A%20%20%20%20outline%3Anone%3B%0A%7D" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. a:active,?a:focus?{??
  2. ????outline:none;??
  3. }??
a:active, a:focus {
    outline:none;
}

?

?

Firefox 默认会在链接获得焦点(或者点击时)加上条虚线框,使用上面的属性可以删除。

最简单的 CSS 重置

Css代码 <embed type="application/x-shockwave-flash" width="14" height="15" src="http://www.iteye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=*%20%7B%0A%20%20%20margin%3A%200%3B%20padding%3A%200%0A%7D%0A" quality="high" allowscriptaccess="always" pluginspage="http://www.macromedia.com/go/getflashplayer"></embed>
  1. *?{??
  2. ???margin:?0 ;?padding:? 0 ??
  3. }
  相关解决方案