Open JaimeCheng opened 5 years ago
本期要点:
- border三角(IE8+),渐变(IE10+),clip-path裁剪(非IE),border-radius圆角(IE9+)。
- 左上角定位时候,不需要父元素relative,也不需要top, left指定。
- clip-path: polygon配合百分比定位以及calc非常强,很多图形(图标,字母,文字)都可以使用这样的方式实现,尺寸任意适配。唯一需要注意的就是兼容性。1/4圆裁剪:clip-path: ellipse(100% 100% at 0% 0%);
- 其他实现:border三角,问题,虽然兼容性好,但是不支持百分比宽度,这就导致无法自动适配尺寸(要么无法适应内容,要么无法使用其他图形-例如文字的色块背景)。
- skewX模拟三角是很棒的实现,因为可以高度自适应。
- 渐变是万能图形绘制方法,理论上,任意的图形都可以使用渐变见绘制,因为background-size和多背景。例如彩色照片,每一个像素点(例如红色 )可以background-size:1px 1px; background-image: liner-gradient(red, red), ...。 本题实现的优点:1. CSS简介,不需要伪元素;2. 兼容性足够,IE10+;3. 方便灵活。可以参考wingmeng的实现。 包括圆弧也是可以使用渐变的,径向渐变。参见XboxYan的实现。
- border-radius实现1/4圆:border-bottom-right-radius: 100%;
题目:
原issue
回答:
满分回答1 | 满分回答2 | 满分回答3 | 满分回答4
总结:
> 在线demo <