博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【一起读书】40个来自CSS世界中的实用技巧汇总
阅读量:4118 次
发布时间:2019-05-25

本文共 4100 字,大约阅读时间需要 13 分钟。

1、清除浮动

主要为子元素浮动(float)之后,父元素无法撑起高度和宽度。

2、文字少时居中,多时靠左

但是要注意,当p的内容为英文单词组成的时候,如果单词过长,而不是“ pppppppppppppppppppppppppppppp”这样的一次,会被视为一个单位而造成超过div的尺寸。

如果你想要英文字符也有中文字符的效果的话,在p使用“ word-break:break-all”。

3、凹凸人

目的在于制造一个凹或凸的形状,利用了“ 2”。

4、让padding,border不影响盒模型的大小

相信这点大部分人都知道,但是有一些奇怪的行为,比如说width <content + padding会怎样?实际上当padding + border> width时,元素的渲染大小(Chrome下)为padding + border;而padding + border <width时,允许剩余空间分配给content。

身高:100%占屏效果
5、任意高度元素展开

缺点是,如果高度太大会造成展开过快和重复中断,那么这个足够大的值应该适当。

6、优雅的图片未加载或加载失败效果

需要注意的是,图片显示完成后,img会成为“替换元素”,而替换元素是无法设置伪元素的,因为内容被图片替换掉了;还需要注意attr里面的变量不能加双引号。

lululu
7、CSS的悬浮图片替换效果

需要注意的是,如果快捷保存图片,保存的是src内的图片,而不是替换之后的。

8、利于seo的“替换元素”标题logo

用h1的原因主要是因为SEO,语义化的问题。

Weismann's blog

9、高兼容,自动等宽,底部对齐的柱状图

需要注意的是,第一个i不能换行,换行后会产生后移的结果。

10、高兼容性的加载效果

在IE6-IE9下是...,其他都是动态的;使用点的目的是语义化和低版本浏览器的兼容。

正在加载中
...
11、扩大点击区域

第一种主要利用了内联元素的填充只会影响外观和不影响布局的特点;第二种针对其他属性会改变背景图定位的一种方式。

demo
12、不使用伪元素的“三道杠”和“圆点”效果
13、导航栏消除右边多余的尺寸

利用保证金来改变尺寸,需要注意,改变尺寸的元素水平方向的尺寸不能是确定的。

14、正确的滚动底部留白方式

如果使用padding留白,在Firefox和IE不会显示。

15、高兼容的多栏等高

注意container高度不能是确定值,缺点是如果在内部使用锚点定位会出现问题。

正方观点

观点1

观点1

反方观点

观点1

16、正确的块级元素右对齐

自动值对于保证金是占用剩余的空间。

demo
17、图片上传增加框

此技巧主要说明border的颜色默认是继承自color的。

18、不影响背景图片位置设置边距。

和增加点击区域第二种方式一样。

19、border制作梯形,各种三角形
20、高兼容双栏,一边等宽一边自适应,等高布局

缺点是边框不支持百分比,最多2-3栏。

1234

21、内联元素“近似”垂直居中

而为什么说“近似”,一句话说清楚,请看开头。

22、多行内容“近似”垂直居中
基于行高实现的...
21、容器内图片的垂直方向间隙问题

产生的问题和“幽灵空白子系统”和x-height有关,你可以尝试在img前加入x字符观察一下。

22、图标文字对齐

ex代表的是x-height的高度,根据x字形的不同(如font-family)而不同。

拉拉

文字

23、永远居中的弹框

特点是内容和浏览器尺寸变化都是自动变换大小和位置,可以通过伪元素的高度控制上下位置。

demo
24、文字环绕图片

float的真正用途。

demo,demo,demo,demo,demo,demo,demo

25、利用溢出:隐藏自定义滚动条

实际上overflow:hidden是可以滚动的,可以通过锚点,focus,scrollTop滚动。滚动条的实现请自行发挥。

26、通过标签实现的选项卡效果

与锚点不同的是不会触发由内到外(多层滚动造成的某种事件冒泡的效果)的页面跳动(元素上边与分段上边对齐),还支持Tab选项的效果;缺点是需要js支持效果。

1
2
3
4
27、“包含块”的绝对定位元素“一柱擎天”问题
拉拉
28、“无依赖绝对定位”的表单验证应用

在一个元素上如果单用(父元素的位置属性均是替换)“ position:absolute”,事实上元素将原地不动,最终会产生BFC。

邮箱格式不准确(示意)
...
29、主体页面侧边栏

利用text-align和fixed的组合;高度放置0和overflow隐藏目的是为了不影响主体的体验,而之所以绝对定位元素没有被隐藏的原因是“如果overflow不是定位元素,同时绝对定位元素和overflow容器同时也没有定位元素,则溢出无法对绝对定位元素进行剪裁。” —《 CSS世界》。

30、不通过宽度和高度设置预定全占用

利用top和bottom或left和right同时设置的时候会触发流体特性的特点;与通过“ top:0; left:0; width:100%; height:100%;”,在设置边距,边框, padding的时候不会溢出到上方的外面(就算你想到box-sizing,那margin呢?);而之所以用span的原因是想说明绝对定位放置元素的displayplace为block。

31、margin:自动水平垂直居中
32、纸张卷边阴影

主要利用“位置:相对; z-index:0;”创建并合并到z-index的负值将阴影放置在“ contaniner”和“ page”之间。

你可以尝试将关键CSS去掉查看效果。

demo

demo

33、隐藏文字

说这个主要是为了说明,Chrome浏览器如果字体设置12px以下的大小(新版本已经不限制了),会被自动处理成12px,但是有一个值除外,0。

34、解决文本装饰下划线和文本重叠

因为是内联元素,所以完全不用担心会影响元素高度的问题。

35、自动将输入的小写字母转换大写
36、价格场景下的首个符号选择器

特点是可以让html结构活跃干净。

¥399

37、元素隐藏同时资源不加载

后续可通过script.innerHTML访问。

38、头像裁剪矩形镂空效果

主要利用轮廓。

39、自定义光标

需要注意IE只支持cur文件。

40、修改水平流到垂直流

兼容到IE7;此应用涉及到一体的东西,所有水平流的特性都可以应用到垂直流中(称为水平居中变成了垂直居中)。

本文完〜

转载地址:http://habpi.baihongyu.com/

你可能感兴趣的文章
斯坦福大学公开课:iOS8开发 第一课:课务,iOS8概述学习笔记
查看>>
URI (Uniform resource identifier) 统一资源标识符
查看>>
关于Swift@IBOutlet连线生成的属性系统自动解包问题
查看>>
Apple WatchOS2 新特性预览
查看>>
Apple Watch 的传感器
查看>>
SCM repository
查看>>
iPhone刷机iOS9 Beta和iWatch刷机watchOS2 Beta详细步骤
查看>>
Swift Compiler Error Binary oprator '+' cannot be applied to operands of type 'UInt16' and 'UInt8'
查看>>
Swift Compiler Error Integer literal overflows when stored into 'UInt8'
查看>>
Swift Compiler Error Type 'int' does not conform to protocol 'Boolean Type'
查看>>
Swift 元组
查看>>
swift 断言(assert)
查看>>
Swift 如何将数字型字符串转换成String类型 (toInt()方法) 及返回值未解包的原因
查看>>
Swift Error fatal error: unexpectedly found nil while unwrapping an Optional value
查看>>
Swift 的nil
查看>>
Swift Compiler Error Arithmetic operation '** ' (on type '**') results in an overflow (溢出运算符'&+')
查看>>
Swift Compiler Error Cannot assign to the result of this expression
查看>>
Swift 集合类型(Collection Type) 之 数组(array)(官方文档翻译及总结)
查看>>
Swift 集合类型(Collection Type) 之 set(官方文档翻译及总结)
查看>>
Swift 集合类型(Collection Type) 之 字典(dictionary)(官方文档翻译及总结)
查看>>