Web开发者的福利 50(20+30)段超实用CSS代码

来源:互联网 发布:基金入门书籍推荐知乎 编辑:程序博客网 时间:2024/04/27 01:18

为了方便大家收藏与转载,现整理出50段,英文原版见:http://blog.csdn.net/love254443233/article/details/8995198

20段:

共享已成为互联网的一种主流,尤其是分享一些非常实用的技术,本文收集了20段非常专业的CSS 2/CSS 3代码片段给大家,你可以把它们保存在IDE里、或者存储在CSS文档里,这些代码片段绝对会给你带来意外的惊喜。

Web开发技术每年都在革新,浏览器已逐渐支持CSS3特性,并且网站设计师和前端开发者普遍采用这种新技术进行设计与开发。但仍然有一些开发者迷恋着一些CSS2代码。

本文将分享20段非常专业的CSS2/CSS3代码供大家使用,你可以把它们保存在IDE里、或者存储在CSS文档里,这些代码片段绝对会给你带来意外的惊喜。

1. CSS Resets

网络上关于CSS重置的代码非常多。本段代码是根据Eric Meyer’s reset codes进行改编的,里面包含一点响应式图片和所有核心元素的边界框设置,这样就可以保持页边距和填充可以很好地对齐。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin0;
  padding0;
  border0;
  font-size100%;
  font: inherit;
  vertical-alignbaseline;
  outlinenone;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
html { height101%; }
body { font-size62.5%line-height1font-familyArialTahomasans-serif; }
 
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { displayblock; }
ol, ul { list-stylenone; }
 
blockquote, q { quotesnone; }
blockquote:before, blockquote:after, q:before, q:after { content''contentnone; }
strong { font-weightbold; }
 
table { border-collapsecollapseborder-spacing0; }
img { border0max-width100%; }
 
p { font-size1.2emline-height1.0emcolor#333; }

2.经典的CSS Clearfix

这个clearfix代码已在Web开发者之间广泛流传,这段类选择器要应用到持有浮动元素的容器中,确保后面的内容都不会浮动,但会被下推和清除。

1
2
3
4
5
.clearfix:after { content"."displayblockclearbothvisibilityhiddenline-height0height0; }
.clearfix { display: inline-block; }
 <font></font> 
html[xmlns] .clearfix { displayblock; }
* html .clearfix { height1%; }

3.升级版的Clearfix

在表现上,新版本和经典版本不存在什么差异,这些类可以有效地清除所有floats,但它们只兼容现代浏览器和传统的IE 6-8。

1
2
3
4
.clearfix:before, .container:after { content""display: table; }<font></font> 
.clearfix:after { clearboth; }
/* IE 6/7 */
.clearfix { zoom: 1; }

4. Cross-Browser Transparency 

CSS3里的许多属性都与浏览器相兼容,但也有特例,比如opacity,需要对它进行一些更新才可以。附加过滤属性可以兼容任何老版的IE浏览器。

1
2
3
4
5
6
.transparent {
    filter: alpha(opacity=50);/* internet explorer */
    -khtml-opacity: 0.5;     /* khtml, old safari */
    -moz-opacity: 0.5;      /* mozilla, netscape */
    opacity: 0.5;          /* fx, safari, opera */
}
源码地址: http://perishablepress.com/cross-browser-transparency-via-css/

5. CSS Blockquote模板

这段代码主要用在页面上进行分离引用或复制内容,并且给页面文字提供了默认样式。 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
blockquote {
    background#f9f9f9;<
    border-left10px solid #ccc;
    margin1.5em 10px;
    padding: .5em 10px;
    quotes"\201C""\201D""\2018""\2019";
}
blockquote:before {
    color#ccc;
    contentopen-quote
    font-size4em;
    line-height: .1em;
    margin-right: .25em;
    vertical-align: -.4em;
}
blockquote p {
    displayinline;
}
查看源码: http://css-tricks.com/snippets/css/simple-and-nice-blockquote-styling/

6. 个性化的圆角代码

许多CSS开发者都非常熟悉圆角语法,但如何为每个角设置不同的值?不如看看下面这段代码吧!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#container {
    -webkit-border-radius: 4px 3px 6px 10px;
    -moz-border-radius: 4px 3px 6px 10px;
    -o-border-radius: 4px 3px 6px 10px
    border-radius: 4px 3px 6px 10px;
}
/* alternative syntax broken into each line */
#container {
    -webkit-border-top-left-radius: 4px;
    -webkit-border-top-rightright-radius: 3px;
    -webkit-border-bottom-rightright-radius: 6px;
    -webkit-border-bottom-left-radius: 10px;
    -moz-border-radius-topleft: 4px;
    -moz-border-radius-topright: 3px;
    -moz-border-radius-bottomright: 6px;
    -moz-border-radius-bottomleft: 10px;
}

7. 一般媒体查询

这是一段非常好的模板,用于各种零零碎碎的媒体查询,在移动设备上也可以使用,这段代码甚至可以通过使用min-device-pixel-ratio引用到视网膜设备上。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/* Smartphones (portrait and landscape) ----------- */
@media only screen 
and (min-device-width : 320px) and (max-device-width : 480px) { 
  /* Styles */
/* Smartphones (landscape) ----------- */
@media only screen and (min-width : 321px) {
  /* Styles */
/* Smartphones (portrait) ----------- */
@media only screen and (max-width : 320px) {
  /* Styles */ 
}
/* iPads (portrait and landscape) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) {
  /* Styles */ 
}
<font></font> 
/* iPads (landscape) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
  /* Styles */
}
/* iPads (portrait) ----------- */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {
  /* Styles */
}  
/* Desktops and laptops ----------- */
@media only screen and (min-width : 1224px) {
  /* Styles */
}
/* Large screens ----------- */
@media only screen and (min-width : 1824px) {
  /* Styles */
}
/* iPhone 4 ----------- */
@media only screen and (-webkit-min-device-pixel-ratio:1.5), only screen and (min-device-pixel-ratio:1.5) {
  /* Styles */
}
源码地址: http://css-tricks.com/snippets/css/media-queries-for-standard-devices/

8. 现代字体栈

在新网页上设计属于自己的字体栈还是件比较困难的事情,希望下面这段代码能给你带来启发和开发模板,关于更多字体栈源码,你可以访问CSS Font Stacks。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
/* Times New Roman-based serif */ 
font-family: Cambria, "Hoefler Text", Utopia, "Liberation Serif""Nimbus Roman No9 L Regular", Times, "Times New Roman"serif
   
/* A modern Georgia-based serif */ 
font-family: Constantia, "Lucida Bright", Lucidabright, "Lucida Serif", Lucida, "DejaVu Serif," "Bitstream Vera Serif""Liberation Serif", Georgia, serif
   
/*A more traditional Garamond-based serif */ 
font-family"Palatino Linotype", Palatino, Palladio, "URW Palladio L""Book Antiqua", Baskerville, "Bookman Old Style""Bitstream Charter""Nimbus Roman No9 L", Garamond, "Apple Garamond""ITC Garamond Narrow""New Century Schoolbook""Century Schoolbook""Century Schoolbook L", Georgia, serif
   
/*The Helvetica/Arial-based sans serif */ 
font-family: Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans""Gill Sans MT""Myriad Pro", Myriad, "DejaVu Sans Condensed""Liberation Sans""Nimbus Sans L"Tahoma, Geneva, "Helvetica Neue"HelveticaArialsans-serif
   
/*The Verdana-based sans serif */ 
font-family: Corbel, "Lucida Grande""Lucida Sans Unicode""Lucida Sans""DejaVu Sans""Bitstream Vera Sans""Liberation Sans"Verdana"Verdana Ref"sans-serif
   
/*The Trebuchet-based sans serif */ 
font-family"Segoe UI", Candara, "Bitstream Vera Sans""DejaVu Sans""Bitstream Vera Sans""Trebuchet MS"Verdana"Verdana Ref"sans-serif
   
/*The heavier “Impact” sans serif */ 
font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", Charcoal, "Helvetica Inserat""Bitstream Vera Sans Bold""Arial Black"sans-serif
   
/*The monospace */ 
font-family: Consolas, "Andale Mono WT""Andale Mono""Lucida Console""Lucida Sans Typewriter""DejaVu Sans Mono""Bitstream Vera Sans Mono""Liberation Mono""Nimbus Mono L", Monaco, "Courier New"Couriermonospace;

源码地址: http://www.sitepoint.com/eight-definitive-font-stacks/

9. 自定义文本选择

一些新的Web浏览器允许你在网页上自定义一些突出显示的颜色,下面代码的默认颜色是浅蓝色,当然,你可以依据个人爱好进行各种颜色设置。下面代码引用了典型的Webkit和Mozilla供应商前缀::selection 。

1
2
3
::selection { background#e2eae2; }
::-moz-selection { background#e2eae2; }
::-webkit-selection { background#e2eae2; }

10.隐藏Logo上的H1文本

1
2
3
4
5
6
7
h1 {
    text-indent-9999px
    margin0 auto;
    width320px;
    height85px;
    backgroundtransparent url("images/logo.png"no-repeat scroll;
}

11. 为图片创建拍立得效果边框

运用下面代码可以在图片上实现拍立得相片效果——一大片白色边框和细微的阴影。你需要修改图片的宽度/高度值来与你的网站布局相匹配。

1
2
3
4
5
6
7
8
9
10
img.polaroid {
    background:#000;/*Change this to a background image or remove*/
    border:solid #fff;
    border-width:6px 6px 20px 6px;
    box-shadow:1px 1px 5px #333;/* Standard blur at 5px. Increase for more depth *
    -webkit-box-shadow:1px 1px 5px #333;
    -moz-box-shadow:1px 1px 5px #333;
    height:200px; /*Set to height of your image or desired div*/
    width:200px;/*Set to width of your image or desired div*/
}
源码地址: http://www.smipple.net/snippet/kettultim/Polaroid%20Image%20Border%20-%20CSS3

12. 锚链接伪类选择器

1
2
3
4
a:link { colorblue; }
a:visited { colorpurple; }
a:hover { colorred; }
a:active { color: yellow; }
源码地址: http://www.ahrefmagazine.com/web-design/30-useful-css-snippets-for-developers

13. 花俏地CSS3 Pull-Quotes

Pull-quotes不同于页面里的blockquote,它们通常用在文章中来引用文本。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
.has-pullquote:before {
    /* Reset metrics. */
    padding0;
    bordernone
    /* Content */
    contentattr(data-pullquote);
    /* Pull out to the right, modular scale based margins. */ 
    float: rightright;
    width320px;
    margin12px -140px 24px 36px;
    /* Baseline correction */
    positionrelative;
    top5px;
    /* Typography (30px line-height equals 25% incremental leading) */
    font-size23px;
    line-height30px;
}
.pullquote-adelle:before {
    font-family"adelle-1""adelle-2";
    font-weight100;
    top10px !important;
}
 
.pullquote-helvetica:before {
    font-family"Helvetica Neue"Arialsans-serif;
    font-weightbold;
    top7px !important;
}
.pullquote-facit:before {
    font-family"facitweb-1""facitweb-2"HelveticaArialsans-serif;
    font-weightbold;
    top7px !important;
}
源码地址: http://miekd.com/articles/pull-quotes-with-html5-and-css/

14. CSS3的全屏背景效果

如果你想使用大图片作为网站背景,并希望在页面滚动时保持固定,该代码片段非常适合,不过这段代码无法在旧的浏览器上工作。

1
2
3
4
5
6
7
html {
    backgroundurl('images/bg.jpg'no-repeat center center fixed
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}
源码: http://css-tricks.com/perfect-full-page-background-image/

15. 内容垂直集中

相对于内容在水平位置,内容在垂直方向是不好把控的,尤其当考虑到滚动条这些因素时。这段纯CSS代码可以很好的工作。

1
2
3
4
5
.container {
    min-height6.5em;
    displaytable-cell;
    vertical-alignmiddle;
}
源码地址: http://www.w3.org/Style/Examples/007/center

16. 垂直滚动条

这段代码将确保你的HTML元素总是稍微高于浏览器滚动条所停留的位置。 

1
html { height101% }

17. CSS3 Gradients模板

1
2
3
4
5
6
7
8
9
#colorbox {
    background#629721;
    background-image: -webkit-gradient(linear, left topleft bottombottom, from(#83b842), to(#629721));
    background-image: -webkit-linear-gradient(top#83b842#629721);
    background-image: -moz-linear-gradient(top#83b842#629721);
    background-image: -ms-linear-gradient(top#83b842#629721);
    background-image: -o-linear-gradient(top#83b842#629721);
    background-image: linear-gradient(top#83b842#629721);
}

18. @Font-Face模板

使用@font-face可以把TTF/OTF/SVG/WOFF文件嵌入到网站,并生成自定义font families。

1
2
3
4
5
6
7
8
9
10
11
@font-face {
    font-family'MyWebFont';
    srcurl('webfont.eot');/* IE9 Compat Modes */
    srcurl('webfont.eot?#iefix'format('embedded-opentype'),/* IE6-IE8 */
    url('webfont.woff'format('woff'),/* Modern Browsers */
    url('webfont.ttf')  format('truetype'),/* Safari, Android, iOS */
    url('webfont.svg#svgFontName'format('svg');/* Legacy iOS */
}
body {
    font-family'MyWebFont'Arialsans-serif;
}
源码地址: http://css-tricks.com/snippets/css/using-font-face/

19.创建缝合效果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
p {
    position:relative;
    z-index:1
    padding10px;
    margin10px;
    font-size21px;
    line-height1.3em;
    color#fff;
    background#ff0030;
    -webkit-box-shadow: 0 0 0 4px #ff00302px 1px 4px 4px rgba(10,10,0,.5);
    -moz-box-shadow: 0 0 0 4px #ff00302px 1px 4px 4px rgba(10,10,0,.5);
    box-shadow: 0 0 0 4px #ff00302px 1px 6px 4px rgba(10,10,0,.5);
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
p:before {
    content"";
    positionabsolute;
    z-index-1;
    top3px;
    bottombottom: 3px;
    left :3px;
    rightright: 3px;
    border2px dashed #fff;
}   
p a {
    color#fff;
    text-decoration:none;
}
p a:hover, p a:focus, p a:active {
    text-decoration:underline;
}

20. CSS3 斑马线效果

当用户在浏览许多行数据时,很难分清哪一个单元格是属于哪一行的。默认情况下,通过添加斑马线,用户可以给奇偶行更新不同的背景色。

1
2
3
tbody tr:nth-child(odd) {
    background-color#ccc;
}

以上参考:http://www.admin10000.com/document/2090.html

后30段:


 1.花式连字符(&)

  这个类应该在span元素里使用,并且里面包括&字符。它使用经典的serif字体和斜体来增强&符号。

[html] view plaincopy
  1. .amp {  
  2.     font-family: Baskerville, 'Goudy Old Style', Palatino, 'Book Antiqua', serif;  
  3.     font-style: italic;  
  4.     font-weight: normal;  
  5. }  

  源码地址: http://css-tricks.com/snippets/css/fancy-ampersand/

  2.段落首字符下沉

  通常,这种效果会出现在印刷媒体上,如报纸或书籍。同样,如果网页布局合理,它也可以使用在Web页面上,它仅针对段落使用,但你也可以与单个元素绑定。

[html] view plaincopy
  1. p:first-letter{  
  2.     display: block;  
  3.     margin: 5px 0 0 5px;  
  4.     float: left;  
  5.     color: #ff3366;  
  6.     font-size: 5.4em;  
  7.     font-family: Georgia, Times New Roman, serif;  
  8. }  

  3.内层CSS3盒阴影

  盒阴影(box shadow)属性几乎可以运用在任何元素上,它们看起来都非常好看。下面这段代码主要聚焦内层阴影的设计。

[html] view plaincopy
  1. #mydiv {   
  2.     -moz-box-shadow: inset 2px 0 4px #000;  
  3.     -webkit-box-shadow: inset 2px 0 4px #000;  
  4.     box-shadow: inset 2px 0 4px #000;  
  5. }  

  4.外层CSS3盒阴影

  下面介绍一段外层阴影代码设计,注意,代码里的第三个参数表示模糊距离(blur distance),而第四个参数表示铺开的(spread)距离。关于这些值的设计,你可以前往 W3Schools学习。

[html] view plaincopy
  1. #mydiv {   
  2.     -webkit-box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.52);  
  3.     -moz-box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.52);  
  4.     box-shadow: 0 2px 2px -2px rgba(0, 0, 0, 0.52);  
  5. }  

  5.三角形列表符号

  该符号只能在CSS3里生成,在主流浏览器中,这是一项非常酷的技术。而其唯一的潜在问题是缺乏对后退方法的支持。 

[html] view plaincopy
  1. ul {  
  2.     margin: 0.75em 0;  
  3.     padding: 0 1em;  
  4.     list-style: none;  
  5. }  
  6. li:before {   
  7.     content: "";  
  8.     border-color: transparent #111;  
  9.     border-style: solid;  
  10.     border-width: 0.35em 0 0.35em 0.45em;  
  11.     display: block;  
  12.     height: 0;  
  13.     width: 0;  
  14.     left: -1em;  
  15.     top: 0.9em;  
  16.     position: relative;  
  17. }  

  源码地址: http://jsfiddle.net/chriscoyier/yNZTU/

  6.居中对齐并设置固定宽度

[html] view plaincopy
  1. #page-wrap {  
  2.     width: 800px;  
  3.     margin: 0 auto;  
  4. }  

  源码地址: http://css-tricks.com/snippets/css/centering-a-website/

  7.CSS3列文本

[html] view plaincopy
  1. #columns-3 {  
  2.     text-align: justify;  
  3.     -moz-column-count: 3;  
  4.     -moz-column-gap: 12px;  
  5.     -moz-column-rule: 1px solid #c4c8cc;  
  6.     -webkit-column-count: 3;  
  7.     -webkit-column-gap: 12px;  
  8.     -webkit-column-rule: 1px solid #c4c8cc;  
  9. }  

  源码地址: http://www.djavupixel.com/development/css-development/master-css3-ultimate-css-code-snippets/

  8.固定页脚

  在网页里添加固定的页脚其实非常简单,并且也很实用。有些网站的页脚设计得很漂亮,可以给网站呈现出一个完美的结尾。

[html] view plaincopy
  1. #footer {  
  2.     position: fixed;  
  3.     left: 0px;  
  4.     bottom: 0px;  
  5.     height: 30px;  
  6.     width: 100%;  
  7.     background: #444;  
  8. }  
  9. /* IE 6 */  
  10. * html #footer {  
  11.     position: absolute;  
  12.     top: expression((0-(footer.offsetHeight)+(document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight)+(ignoreMe = document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop))+'px');  
  13. }  

 
 源码地址: http://www.flashjunior.ch/school/footers/fixed.cfm

  9.IE 6下修复PNG格式的透明度

  在网站里使用透明的图像已成为一种很普遍的做法,其始于.gif图片格式,但现在也涉及到.png图片格式。而一些老版本的IE不支持透明度,下面这段代码会很好地解决这一问题。

[html] view plaincopy
  1. .bg {  
  2.     width:200px;  
  3.     height:100px;  
  4.     background: url(/folder/yourimage.png) no-repeat;  
  5.     _background:none;  
  6.     _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/folder/yourimage.png',sizingMethod='crop');  
  7. }  
  8. /* 1px gif method */  
  9. img, .png {  
  10.     position: relative;  
  11.     behavior: expression((this.runtimeStyle.behavior="none")&&(this.pngSet?this.pngSet=true:(this.nodeName == "IMG" && this.src.toLowerCase().indexOf('.png')>-1?(this.runtimeStyle.backgroundImage = "none",  
  12.        this.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + this.src + "', sizingMethod='image')",  
  13.        this.src = "images/transparent.gif"):(this.origBg = this.origBg? this.origBg :this.currentStyle.backgroundImage.toString().replace('url("','').replace('")',''),  
  14.        this.runtimeStyle.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + this.origBg + "', sizingMethod='crop')",  
  15.        this.runtimeStyle.backgroundImage = "none")),this.pngSet=true));  
  16. }  

  源码地址: http://css-tricks.com/snippets/css/png-hack-for-ie-6/

  10.跨浏览器设置最小高度

  有时开发者需要对HTML元素设置最小高度,然而,这个效果却无法兼容IE和老版本的Firefox,下面这段代码可以修复这个问题。

[html] view plaincopy
  1. #container {  
  2.     min-height: 550px;  
  3.     height: auto !important;  
  4.     height: 550px;  
  5. }  

  11. CSS3发光输入框

  下面的这段代码重写了浏览器的默认行为,可以让Chrome和Safari浏览器下普通的表单输入框产生发光效果。

[html] view plaincopy
  1. input[type=text], textarea {  
  2.     -webkit-transition:all0.30s ease-in-out;  
  3.     -moz-transition:all0.30s ease-in-out;  
  4.     -ms-transition:all0.30s ease-in-out;  
  5.     -o-transition:all0.30s ease-in-out;  
  6.     outline:none;  
  7.     padding:3px0px 3px 3px;  
  8.     margin:5px1px 3px 0px;  
  9.     border:1pxsolid #ddd;  
  10. }  
  11. input[type=text]:focus, textarea:focus {  
  12.     box-shadow:00 5px rgba(81,203,238,1);  
  13.     padding:3px0px 3px 3px;  
  14.     margin:5px1px 3px 0px;  
  15.     border:1pxsolid rgba(81,203,238,1);  
  16. }  

  源码地址: http://css-tricks.com/snippets/css/glowing-blue-input-highlights/

  12.基于文件类型来创建链接样式

  下面这段代码通过使用CSS选择器和图像图标来实现各种类型的链接样式,可能会用到各种协议(HTTP、FTP、IRC,mailto),或者是文件本身的类型(mp3、avi、pdf)。

[html] view plaincopy
  1. /* external links */  
  2. a[href^="http://"] {  
  3.     padding-right:13px;  
  4.     background:url('external.gif')no-repeatcenter right;  
  5. }  
  6. /* emails */  
  7. a[href^="mailto:"] {  
  8.     padding-right:20px;  
  9.     background:url('email.png')no-repeatcenter right;  
  10. }  
  11. /* pdfs */  
  12. a[href$=".pdf"] {  
  13.     padding-right:18px;  
  14.     background:url('acrobat.png')no-repeatcenter right;  
  15. }  

  源码地址: http://www.designyourway.net/blog/resources/31-css-code-snippets-to-make-you-a-better-coder/

  13.pre标签封装代码

  pre标签常用来对代码进行布局,可以解决因为行太多带来的滚动条问题。下面这段代码就使用pre来封装代码,让内容直接显示在页面中。

[html] view plaincopy
  1. pre{  
  2.     white-space: pre-wrap;       /* css-3 */  
  3.     white-space: -moz-pre-wrap;  /* Mozilla, since 1999 */  
  4.     white-space: -pre-wrap;      /* Opera 4-6 */  
  5.     white-space: -o-pre-wrap;    /* Opera 7 */  
  6.     word-wrap: break-word;       /* Internet Explorer 5.5+ */  
  7. }  

  源码地址: http://css-tricks.com/snippets/css/make-pre-text-wrap/

  14.鼠标指向时变成手型

  网页中有许多item在点击时,鼠标不会变成小手的形状。这套CSS选择器会强迫鼠标越过一些关键元素和其他对象一起来使用.pointer这个类。

[html] view plaincopy
  1. a[href], input[type='submit'], input[type='image'], label[for], select, button, .pointer{  
  2.     cursor:pointer;  
  3. }  
 源码地址: http://css-tricks.com/snippets/css/give-clickable-elements-a-pointer-cursor/

  15.页面顶部阴影

  简单地把下面这段代码拷贝到页面里,它会在body元素之前产生黑色的,渐渐变淡的阴影。这种效果通常用来给一个文本框或网页元素加阴影。

[html] view plaincopy
  1. body:before {  
  2.     content:"";  
  3.     position:fixed;  
  4.     top:-10px;  
  5.     left:0;  
  6.     width:100%;  
  7.     height:10px;  
  8.     -webkit-box-shadow:0px0px 10px rgba(0,0,0,.8);  
  9.     -moz-box-shadow:0px0px 10px rgba(0,0,0,.8);  
  10.     box-shadow:0px0px 10px rgba(0,0,0,.8);  
  11.     z-index:100;  
  12. }  

  源码地址: http://css-tricks.com/snippets/css/top-shadow/

  16.气泡引用效果

  这种效果常出现在论坛、创建公告牌或者是文本引用上。你只需把下面这段代码拷贝到样式表文件即可。这里(需翻墙)提供了许多关于语音泡泡的代码片段和使用技巧,欢迎去围观。

[html] view plaincopy
  1. .chat-bubble {  
  2.     background-color:#ededed;  
  3.     border:2pxsolid #666;  
  4.     font-size:35px;  
  5.     line-height:1.3em;  
  6.     margin:10pxauto;  
  7.     padding:10px;  
  8.     position:relative;  
  9.     text-align:center;  
  10.     width:300px;  
  11.     -moz-border-radius:20px;  
  12.     -webkit-border-radius:20px;  
  13.     -moz-box-shadow:00 5px #888;  
  14.     -webkit-box-shadow:00 5px #888;  
  15.     font-family:'Bangers',arial,serif;  
  16. }  
  17. .chat-bubble-arrow-border {  
  18.     border-color:#666transparent transparent transparent;  
  19.     border-style:solid;  
  20.     border-width:20px;  
  21.     height:0;  
  22.     width:0;  
  23.     position:absolute;  
  24.     bottom:-42px;  
  25.     left:30px;  
  26. }  
  27. .chat-bubble-arrow {  
  28.     border-color:#edededtransparent transparent transparent;  
  29.     border-style:solid;  
  30.     border-width:20px;  
  31.     height:0;  
  32.     width:0;  
  33.     position:absolute;  
  34.     bottom:-39px;  
  35.     left:30px;  
  36. }  

  源码地址(需翻墙): http://html5snippets.com/snippets/35-css3-comic-bubble-using-triangle-trick

  17.指定标题样式

  该模板提供了所有头元素的主要样式,从H1到H5。

[html] view plaincopy
  1. h1,h2,h3,h4,h5{  
  2.     color:#005a9c;  
  3. }  
  4. h1{  
  5.     font-size:2.6em;  
  6.     line-height:2.45em;  
  7. }  
  8. h2{  
  9.     font-size:2.1em;  
  10.     line-height:1.9em;  
  11. }  
  12. h3{  
  13.     font-size:1.8em;  
  14.     line-height:1.65em;  
  15. }  
  16. h4{  
  17.     font-size:1.65em;  
  18.     line-height:1.4em;  
  19. }  
  20. h5{  
  21.     font-size:1.4em;  
  22.     line-height:1.25em;  
  23. }  

  源码地址: https://snipt.net/freshmaker99/headers/

  18.利用CSS生成纹理图案背景

  通过CSS来为背景图片添加噪点,从而形成漂亮的纹理图案。你可以使用 NoiseTextureGenerator生成器自定义噪点的纹理图案。

[html] view plaincopy
  1. body {  
  2.     background-image:url(data:image/png;base64,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);  
  3.     background-color:#0094d0;  
  4. }  
 19.List Ordering

  你可能会遇到这种列表情况,需要把这个列表拆分成两个UL元素,你不妨看看下面这段代码。

[html] view plaincopy
  1. ol.chapters {  
  2.     list-style:none;  
  3.     margin-left:0;  
  4. }  
  5.    
  6. ol.chapters > li:before {  
  7.     content:counter(chapter)". ";  
  8.     counter-increment: chapter;  
  9.     font-weight:bold;  
  10.     float:left;  
  11.     width:40px;  
  12. }  
  13.    
  14. ol.chapters li {  
  15.     clear:left;  
  16. }  
  17.    
  18. ol.start {  
  19.     counter-reset: chapter;  
  20. }  
  21.    
  22. ol.continue {  
  23.     counter-reset: chapter 11;  
  24. }  

  源码地址: http://timmychristensen.com/css-ordered-list-numbering-examples.html

  20.为文本添加悬停提示框

  把这段代码拷贝到样式表中,使用新的HTML5数据属性,通过使用data-tooltip你就可以给文本添加悬停提示框了。

[html] view plaincopy
  1. a {   
  2.     border-bottom:1pxsolid #bbb;  
  3.     color:#666;  
  4.     display:inline-block;  
  5.     position:relative;  
  6.     text-decoration:none;  
  7. }  
  8. a:hover,  
  9. a:focus {  
  10.     color:#36c;  
  11. }  
  12. a:active {  
  13.     top:1px;  
  14. }  
  15.     
  16. /* Tooltip styling */  
  17. a[data-tooltip]:after {  
  18.     border-top:8pxsolid #222;  
  19.     border-top:8pxsolid hsla(0,0%,0%,.85);  
  20.     border-left:8pxsolid transparent;  
  21.     border-right:8pxsolid transparent;  
  22.     content:"";  
  23.     display:none;  
  24.     height:0;  
  25.     width:0;  
  26.     left:25%;  
  27.     position:absolute;  
  28. }  
  29. a[data-tooltip]:before {  
  30.     background:#222;  
  31.     background: hsla(0,0%,0%,.85);  
  32.     color:#f6f6f6;  
  33.     content:attr(data-tooltip);  
  34.     display:none;  
  35.     font-family:sans-serif;  
  36.     font-size:14px;  
  37.     height:32px;  
  38.     left:0;  
  39.     line-height:32px;  
  40.     padding:015px;  
  41.     position:absolute;  
  42.     text-shadow:01px 1px hsla(0,0%,0%,1);  
  43.     white-space:nowrap;  
  44.     -webkit-border-radius:5px;  
  45.     -moz-border-radius:5px;  
  46.     -o-border-radius:5px;  
  47.     border-radius:5px;  
  48. }  
  49. a[data-tooltip]:hover:after {  
  50.     display:block;  
  51.     top:-9px;  
  52. }  
  53. a[data-tooltip]:hover:before {  
  54.     display:block;  
  55.     top:-41px;  
  56. }  
  57. a[data-tooltip]:active:after {  
  58.     top:-10px;  
  59. }  
  60. a[data-tooltip]:active:before {  
  61.     top:-42px;  
  62. }  

  源码地址: http://www.impressivewebs.com/pure-css-tool-tips/

  21.创建暗灰色的按钮样式

  下面这段代码创建了CSS3按钮类,并根据按钮颜色命名为.graybtn。当然你也可以根据自己的网站风格对颜色进行更改。

[html] view plaincopy
  1. .graybtn {  
  2.     -moz-box-shadow:inset0px 1px 0px 0px #ffffff;  
  3.     -webkit-box-shadow:inset0px 1px 0px 0px #ffffff;  
  4.     box-shadow:inset0px 1px 0px 0px #ffffff;  
  5.     background:-webkit-gradient( linear, lefttop,leftbottom, color-stop(0.05,#ffffff), color-stop(1,#d1d1d1) );  
  6.     background:-moz-linear-gradient(centertop,#ffffff5%,#d1d1d1100% );  
  7.     filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff'endColorstr='#d1d1d1');  
  8.     background-color:#ffffff;  
  9.     -moz-border-radius:6px;  
  10.     -webkit-border-radius:6px;  
  11.     border-radius:6px;  
  12.     border:1pxsolid #dcdcdc;  
  13.     display:inline-block;  
  14.     color:#777777;  
  15.     font-family:arial;  
  16.     font-size:15px;  
  17.     font-weight:bold;  
  18.     padding:6px24px;  
  19.     text-decoration:none;  
  20.     text-shadow:1px1px 0px #ffffff;  
  21. }  
  22. .graybtn:hover {  
  23.     background:-webkit-gradient( linear, lefttop,leftbottom, color-stop(0.05,#d1d1d1), color-stop(1,#ffffff) );  
  24.     background:-moz-linear-gradient(centertop,#d1d1d15%,#ffffff100% );  
  25.     filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#d1d1d1'endColorstr='#ffffff');  
  26.     background-color:#d1d1d1;  
  27. }  
  28. .graybtn:active {  
  29.     position:relative;  
  30.     top:1px;  
  31. }  
 源码地址: http://html5snippets.com/snippets/1-a-css-rounded-gray-button

  22.打印的页面上显示URL

  这条规则会使打印出来的页面在超链接文字后面加上URL,URL会被放在一组括号里面,前后各留一个空格。

[html] view plaincopy
  1. @mediaprint  {    
  2.   a:after {    
  3.     content:" [" attr(href)"] ";   
  4.   }   
  5. }  

  源码地址:http://www.smipple.net/snippet/bramloquet/Print%20the%20url%20after%20your%20links

  23.屏蔽Webkit移动浏览器中元素高亮效果

  在访问移动网站时,你会发现,在选中的元素周围会出现一些灰色的框框,而下面这段代码即可屏蔽这种样式。

[html] view plaincopy
  1. body {  
  2.     -webkit-touch-callout:none;  
  3.     -webkit-user-select:none;  
  4.     -khtml-user-select:none;  
  5.     -moz-user-select:none;  
  6.     -ms-user-select:none;  
  7.     user-select:none;  
  8. }  

  24.利用CSS生成小圆点图案

  通过下面的代码,可以让你的网站背景上产生一些小圆点装饰图案。默认情况下,它是使用在body元素上,但你也可以把它使用在网页里的其他容器上。

[html] view plaincopy
  1. body {  
  2.     background: radial-gradient(circle,white10%,transparent10%),  
  3.     radial-gradient(circle,white10%,black10%)50px50px;  
  4.     background-size:100px100px;  
  5. }  

  源码地址: http://dabblet.com/gist/1457668

  25.CSS3棋盘格效果

和上面的小圆点设计一样,这个效果需要一些额外的语法才可以工作,它需要在支持CSS3的浏览器上运行,效果很艳丽。当然,你可以根据需要自定义颜色。

[html] view plaincopy
  1. body {  
  2.     background-color:white;  
  3.     background-image: linear-gradient(45deg,black25%,transparent25%,transparent75%,black75%,black),  
  4.     linear-gradient(45deg,black25%,transparent25%,transparent75%,black75%,black);  
  5.     background-size:100px100px;  
  6.     background-position:00,50px50px;  
  7. }  
  26.Github Fork红丝带

  下面这段代码是利用CSS3的transform属性生成Fork me on Github红丝带效果。

[html] view plaincopy
  1. .ribbon {  
  2.     background-color:#a00;  
  3.     overflow:hidden;  
  4.     /* top left corner */  
  5.     position:absolute;  
  6.     left:-3em;  
  7.     top:2.5em;  
  8.     /* 45 deg ccw rotation */  
  9.     -moz-transform: rotate(-45deg);  
  10.     -webkit-transform: rotate(-45deg);  
  11.     /* shadow */  
  12.     -moz-box-shadow:00 1em #888;  
  13.     -webkit-box-shadow:00 1em #888;  
  14. }  
  15. .ribbon a {  
  16.     border:1pxsolid #faa;  
  17.     color:#fff;  
  18.     display:block;  
  19.     font:bold81.25% 'Helvetiva Neue',Helvetica,Arial,sans-serif;  
  20.     margin:0.05em0 0.075em 0;  
  21.     padding:0.5em3.5em;  
  22.     text-align:center;  
  23.     text-decoration:none;  
  24.     /* shadow */  
  25.     text-shadow:00 0.5em #444;  
  26. }  

  源码地址: http://unindented.org/articles/2009/10/github-ribbon-using-css-transforms/

  27.字体压缩

  在样式表里使用如下代码能够帮你节省许多网页空间。

[html] view plaincopy
  1. p {  
  2.   font:italicsmall-caps bold 1.2em/1.0emArial,Tahoma,Helvetica;  
  3. }  

  源码地址: http://www.csspop.com/view/542

  28.纸页面卷曲效果

  这种效果可以被广泛的使用在多种容器中,查看 demo page页面来更好地掌握该函数的使用吧。

[html] view plaincopy
  1. ul.box {  
  2.     position:relative;  
  3.     z-index:1;/* prevent shadows falling behind containers with backgrounds */  
  4.     overflow:hidden;  
  5.     list-style:none;  
  6.     margin:0;  
  7.     padding:0;  
  8. }  
  9.    
  10. ul.box li {  
  11.     position:relative;  
  12.     float:left;  
  13.     width:250px;  
  14.     height:150px;  
  15.     padding:0;  
  16.     border:1pxsolid #efefef;  
  17.     margin:030px 30px 0;  
  18.     background:#fff;  
  19.     -webkit-box-shadow:01px 4px rgba(0,0,0,0.27),00 40px rgba(0,0,0,0.06)inset;  
  20.     -moz-box-shadow:01px 4px rgba(0,0,0,0.27),00 40px rgba(0,0,0,0.06)inset;  
  21.     box-shadow:01px 4px rgba(0,0,0,0.27),00 40px rgba(0,0,0,0.06)inset;  
  22. }  
  23.    
  24. ul.box li:before,  
  25. ul.box li:after {  
  26.     content:'';  
  27.     z-index:-1;  
  28.     position:absolute;  
  29.     left:10px;  
  30.     bottom:10px;  
  31.     width:70%;  
  32.     max-width:300px;/* avoid rotation causing ugly appearance at large container widths */  
  33.     max-height:100px;  
  34.     height:55%;  
  35.     -webkit-box-shadow:08px 16px rgba(0,0,0,0.3);  
  36.     -moz-box-shadow:08px 16px rgba(0,0,0,0.3);  
  37.     box-shadow:08px 16px rgba(0,0,0,0.3);  
  38.     -webkit-transform: skew(-15deg) rotate(-6deg);  
  39.     -moz-transform: skew(-15deg) rotate(-6deg);  
  40.     -ms-transform: skew(-15deg) rotate(-6deg);  
  41.     -o-transform: skew(-15deg) rotate(-6deg);  
  42.     transform: skew(-15deg) rotate(-6deg);  
  43. }  
  44.    
  45. ul.box li:after {  
  46.     left:auto;  
  47.     right:10px;  
  48.     -webkit-transform: skew(15deg) rotate(6deg);  
  49.     -moz-transform: skew(15deg) rotate(6deg);  
  50.     -ms-transform: skew(15deg) rotate(6deg);  
  51.     -o-transform: skew(15deg) rotate(6deg);  
  52.     transform: skew(15deg) rotate(6deg);  
  53. }  

  源码地址: http://www.csspop.com/view/524

  29.发光的锚链接

  下面这段代码可以创建自定义的锚链接,鼠标悬浮在上面会发光。

[html] view plaincopy
  1. a {  
  2.     color:#00e;  
  3. }  
  4. a:visited {  
  5.     color:#551a8b;  
  6. }  
  7. a:hover {  
  8.     color:#06e;  
  9. }  
  10. a:focus {  
  11.     outline:thindotted;  
  12. }  
  13. a:hover, a:active {  
  14.     outline:0;  
  15. }  
  16. a, a:visited, a:active {  
  17.     text-decoration:none;  
  18.     color:#fff;  
  19.     -webkit-transition:all.3s ease-in-out;  
  20. }  
  21. a:hover, .glow {  
  22.     color:#ff0;  
  23.     text-shadow:00 10px #ff0;  
  24. }  

  30.创建CSS3 Banner

  在支持CSS3的浏览器中,下面的代码可以生成漂亮的纯CSS图案。这种效果常见于电子商务网站的产品图片、缩略图、视频预览等。

[html] view plaincopy
  1. .featureBanner {  
  2.     position:relative;  
  3.     margin:20px  
  4. }  
  5. .featureBanner:before {  
  6.     content:"Featured";  
  7.     position:absolute;  
  8.     top:5px;  
  9.     left:-8px;  
  10.     padding-right:10px;  
  11.     color:#232323;  
  12.     font-weight:bold;  
  13.     height:0px;  
  14.     border:15pxsolid #ffa200;  
  15.     border-right-color:transparent;  
  16.     line-height:0px;  
  17.     box-shadow:-0px5px 5px -5px #000;  
  18.     z-index:1;  
  19. }  
  20. .featureBanner:after {  
  21.     content:"";  
  22.     position:absolute;  
  23.     top:35px;  
  24.     left:-8px;  
  25.     border:4pxsolid #89540c;  
  26.     border-left-color:transparent;  
  27.     border-bottom-color:transparent;  
  28. }  

 源码地址: http://www.csspop.com/view/553

 英文来源:css-snippets-for-designers

以上参考:http://www.admin10000.com/document/2123.html