Open anjia opened 5 years ago
本次大会共有 7 个主题:
下文若引用了相关主题的内容,则会用对应的角标 n 标出
聊几个有意思的技术点。
margin: auto 配合 display: flex 带来的惊喜 1。
margin: auto
display: flex
示例1:轻松实现水平垂直居中(在线预览)
关键代码:
<div class="demo1"> <div class="cont"></div> </div> <style> .demo1 { display: flex; } .demo1 .cont { margin: auto; } </style>
示例2:一层 HTML 结构实现左“右”布局(在线预览)
<ul class="demo2"> <li>首页</li> <li>动态</li> <li>话题</li> <li>活动</li> <li>登录 注册</li> </ul> <style> .demo2 { display: flex; } .demo2 > li:last-child { margin-left: auto; } </style>
@supports 是 CSS 的特性查询。它定义的一组规则,只有当浏览器支持的时候才会生效。非常适合做一些纯 CSS 层面的渐进增强和优雅降级。
@supports
eg.
@supports (display: grid) { div { display: grid; } } @supports not (display: grid) { div { float: right; } }
CSS Conditional Rules 共有四个规则,分别是: @supports 特性查询 @media 媒体查询 @import 引入外链样式的 @document 基于 url 加载样式(尚在实验中) 详见 CSS Conditional Rules Module Level 3
CSS Conditional Rules 共有四个规则,分别是:
@media
@import
@document
详见 CSS Conditional Rules Module Level 3
这种特性检测也有对应的 JS API CSS.supports()。
CSS.supports()
var result = CSS.supports('display: grid'); // 返回 boolean var result = CSS.supports('display', 'grid');
技巧是灵活运用 CSS 属性值的“有效”区间。
eg. opacity 3 当它的值小于 0 时,会被当成 0 处理;当它的值大于 1 时,会被当成 1 来处理。所以,用它就可以实现 CSS 里的 Boolean 值了。比如下面的效果 3:在线预览
opacity
eg. CSS 渐变里的 <color-stop> = <color> <length-percentage>? 当<length-percentage>的值比它上一个颜色的位置的值小时,则会被“修正”成和上一个位置相等的值。这样就可以“偷懒”实现下面的效果了:在线预览
<color-stop> = <color> <length-percentage>?
<length-percentage>
<length-percentage>之所以这样“修正”,是和渐变本身的特性相关的。详见深入理解 CSS linear-gradient
css-doodle 的效果简直是太惊艳了,我只想说袁川是一名拿着 CSS 画笔的画家。在线欣赏他的各种作品 codepen.io/collections。
基础素材:各种形状(直线/虚线/圆角/圆形/半圆/三角形/多边形等)和 Unicode 字符(等) 方式:平铺、随机、数量(等) 配色:Color Hunt、Coolors.co(等) 画龙点睛:设计感和思考力(等)
后面都加了“(等)”,是因为这些都是我作为一名观众的心得,比较主观
关于 css-doodle 更准确的信息,可查看其源码 yuanchuan/css-doodle。
scrollbar-width
scrollbar-color
scroll-behavior: smooth
scroll-snap-type: x|y|both mandatory|proximity
scroll-snap-align: none|start|end|center
scroll-snap-stop: normal|always
width
weight
style
@media print {}
生成艺术?
@zzz6519003 嗯。主题的标题是《CSS 生成艺术》,详见 https://www.yuque.com/cssconf/5th
五层呢~。~
本次大会共有 7 个主题:
聊几个有意思的技术点。
margin: auto
margin: auto
配合display: flex
带来的惊喜 1。示例1:轻松实现水平垂直居中(在线预览)
关键代码:
示例2:一层 HTML 结构实现左“右”布局(在线预览)
关键代码:
@supports
@supports
是 CSS 的特性查询。它定义的一组规则,只有当浏览器支持的时候才会生效。非常适合做一些纯 CSS 层面的渐进增强和优雅降级。eg.
这种特性检测也有对应的 JS API
CSS.supports()
。eg.
CSS 的边界技巧
技巧是灵活运用 CSS 属性值的“有效”区间。
eg.
opacity
3 当它的值小于 0 时,会被当成 0 处理;当它的值大于 1 时,会被当成 1 来处理。所以,用它就可以实现 CSS 里的 Boolean 值了。比如下面的效果 3:在线预览eg. CSS 渐变里的
<color-stop> = <color> <length-percentage>?
当<length-percentage>
的值比它上一个颜色的位置的值小时,则会被“修正”成和上一个位置相等的值。这样就可以“偷懒”实现下面的效果了:在线预览css-doodle
css-doodle 的效果简直是太惊艳了,我只想说袁川是一名拿着 CSS 画笔的画家。在线欣赏他的各种作品 codepen.io/collections。
基础素材:各种形状(直线/虚线/圆角/圆形/半圆/三角形/多边形等)和 Unicode 字符(等) 方式:平铺、随机、数量(等) 配色:Color Hunt、Coolors.co(等) 画龙点睛:设计感和思考力(等)
关于 css-doodle 更准确的信息,可查看其源码 yuanchuan/css-doodle。
其它
scrollbar-width
scrollbar-color
scroll-behavior: smooth
scroll-snap-type: x|y|both mandatory|proximity
滚动-捕捉-类型scroll-snap-align: none|start|end|center
滚动-捕捉-对齐scroll-snap-stop: normal|always
滚动-捕捉-停止width
weight
和style
等@media print {}
更多