本文是 CSS Houdini 之 CSS Painting API 系列第四篇. 现代 CSS 之高阶图片渐隐消失术 现代 CSS 高阶技巧,像 Canvas 一样自由绘图构建样式! 现代 CSS 高阶技巧,完美的波浪进度条效果! 在上三篇中,我们详细介绍了 CSS Painting API 是如何一步一步,实现自定义图案甚至实现动画效果的! 在这一篇中,我们将继续探索,尝试使用 CSS Painting API,去实现过往 CSS 中非常难以实现的一个点,那就是如何绘制不规则图形的边框. C…
本文是 CSS Houdini 之 CSS Painting API 系列第三篇. 现代 CSS 之高阶图片渐隐消失术 现代 CSS 高阶技巧,像 Canvas 一样自由绘图构建样式! 在上两篇中,我们详细介绍了 CSS Painting API 是如何一步一步,实现自定义图案甚至实现动画效果的! 在这一篇中,我们将继续探索,尝试使用 CSS Painting API,去实现一些过往纯 CSS 无法实现的效果. CSS Painting API 再简单快速的过一下,什么是 CSS Paintin…
在上一篇文章中 -- 现代 CSS 之高阶图片渐隐消失术,我们借助了 CSS @Property 及 CSS Mask 属性,成功的实现了这样一种图片渐变消失的效果: CodePen Demo -- 基于 @property 和 mask 的文本渐隐消失术 但是,这个效果的缺陷也非常明显,虽然借助了 SCSS 简化了非常多的代码,但是,如果我们查看编译后的 CSS 文件,会发现,在利用 SCSS 只有 80 的代码的情况下,编译后的 CSS 文件行数高达 2400+ 行,实在是太夸张了. 究其原…
通常对于CoreText之类自己实现绘制的控件来说,计算富文本的宽高事实上须要依赖CTFramesetterSuggestFrameSizeWithConstraints这种方法. 但有些时候.我们可能仅仅是使用UILable.UITextView等系统控件,设置了他们的attributedText.此时.计算控件宽高事实上能够利用系统自身的方法. 比如: label.attributedText = attributedString; 仅仅须要使用 h = [label sizeThatFit…
在第一次正式写项目的时候,遇到了几个布局的小技巧.记录一下. 我们常常会遇到图片和文字对齐的一种样式.比如 这样的样式,我们写的时候有时候会出现不对齐的情况.我们有俩种方法 一种就是flex的布局,还有就是vertical-align: middle;这是设置图片对齐的一种方式. ,有时候,我们在用flex布局的时候,我们会发现图片会变形,这样,我们把img标签用其他标签套一下.就可以了. 我们也会遇到这样的效果.就是给我们的背景有透明度小于一的时候,但是上面的文字透明度为1.这时候我们可以多建…
身为小前端菜鸟一枚,忽然听到这样一则传言~~ 心情久久不能平复,想到前几日,开通了博客君,特来此寻找存在feeling~ 旨在造福普罗大众(更多前端小菜鸟) 话不多说, 我们步入正题,今天来给大家分享一下很早很早以前从某张大神那里学习到的一个很实用的小技巧,那就是margin-top在父容器发生重叠了,该怎么办呢~!!!!!!!!! 首先,看下面这个 “多木”  : 我们可以看到,这里有 abc 三兄弟, c是老大,欺压者a和b  a是老二 保护着b,而b由于年龄太小,忍受不了c的羞辱与暴行,决…
1.黑白图像img.desaturate { filter: grayscale(100%); -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%);}2. 使用 :not() 在菜单上应用/取消应用边框/* add border */.nav li { border-right: 1px solid #666;}…
六.垂直居中-父元素高度确定的单行文本 <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>垂直居中</title> <style> .wrap h2{ margin:0; height:100px; background:#ccc; } </style> </head> <body> <!--…
一.css顺序 首先声明,浏览器读取css的方式是从上到下的.我们一般书写css只要元素具备这些属性就会达到我们预期的效果,但是这会给以后的维护和浏览器的渲染效率带来一定的影响,那么该怎么书写css的顺序呢?有没有一定的规范呢? 首先我们知道css的属性按特性分为几类: 1.规定元素特性,如display.position.float,这些属性会决定他的排版方式 2.规定元素的空间占据,如line-height.margin.padding.width.height等,这些属性会决定元素的大小和…
父元素如何围住浮动的子元素的三种办法: 一.为父元素应用overflow:hidden. overflow真正用途是防止包含元素被大的内容撑开,设定了宽度之后,包含元素将超过容器的内容减掉:而它还有另外一个作用就是迫使父元素包含其浮动的子元素. 二.同时浮动父元素. 三.添加非浮动的元素并清除它. 这里又有二种办法来清除元素: 第一种方法是加个空的div容器,由于没有往其添加内容,所以不会引入多余空间,然后使用clear属性清除他,我们知道包含元素一定会包围非浮动的子元素, 当我们添加一个div…