Sass嵌套所带来的问题
在CSS是如何渲染的一篇中,我们晓得CSS是从右向左进行渲染的,那么我们在写SASS时就需要格外注意嵌套问题了。因为嵌套越多,最终生成的CSS选择器就会越来越长。
例如:
ul{ li{ a{ i{ } } } }
那么,使用SASS编译后会得出:…
这篇文章大部分内容并非我的原创,参考文章有:
我一直以为浏览器是将CSS选择器进行从左往右进行渲染的,直到现在才知道事实并非如此,比如:
ul>li
当我们给元素添加:active
伪类时,电脑中当鼠标按下该元素的时会触发这个状态,但是在手机上却不会,比如下面这个例子:
电脑上,您可以直接点击二维码打开Demo,手机则扫描二维码进行访问:
上面的例子在电脑上有active
状态是肯定的,但是手机访问却没有这个状态,并且还有一层半透明的层覆盖在上面,这种用户体验实在是太差了。
首先,需要把链接在移动端上默认的一层半透明的层删掉,这个给所有的a标签添加一个:
-webkit-tap-highlight-color: rgba(0,0,0,0);
不知道你是否遇到过这种情况:当发现某些东西可以允许你很大胆的使用CSS3的时候(比如CSS3中的线性渐变),你可能就会什么都不想的写了一大堆的CSS3的代码,不管什么前缀都加上去(除非你用框架),然后每一种前缀后面的值写的都是一样的,最后在各个高端浏览器或者在手机上测试的时候,可能会出现不同的效果,甚至没有效果,这是为什么呢?这篇文章或许会解开你的一些迷惑。
在W3C的官网上,标准语法是这样的定义的:
<linear-gradient> = linear-gradient( [ [ <angle> | to…
所有添加了CSS3动画的元素都会有一个Transitionend事件,顾名思义,也就是当前元素的CSS3动画完成的时候执行一些操作。
下面来看一个例子,一个元素,当鼠标移过它的时候,我们让它在1秒内使用CSS3从宽度100PX
变到200PX
,动画执行完成后,弹出一句话:
<div id="ani"> </div>
window.onload = function(){ var