Sass嵌套问题

Sass嵌套所带来的问题

CSS是如何渲染的一篇中,我们晓得CSS是从右向左进行渲染的,那么我们在写SASS时就需要格外注意嵌套问题了。因为嵌套越多,最终生成的CSS选择器就会越来越长。

例如:

ul{
	li{
		a{
			i{
				
			}
		}
	}
}

那么,使用SASS编译后会得出:…

CSS是如何渲染的

近似翻译

这篇文章大部分内容并非我的原创,参考文章有:

从右向左渲染

我一直以为浏览器是将CSS选择器进行从左往右进行渲染的,直到现在才知道事实并非如此,比如:

ul>li 

给手机网页添加按下(:active)状态

:active状态

当我们给元素添加:active伪类时,电脑中当鼠标按下该元素的时会触发这个状态,但是在手机上却不会,比如下面这个例子:

activeMotion

电脑上,您可以直接点击二维码打开Demo,手机则扫描二维码进行访问:

active1

上面的例子在电脑上有active状态是肯定的,但是手机访问却没有这个状态,并且还有一层半透明的层覆盖在上面,这种用户体验实在是太差了。

手机添加:active状态

首先,需要把链接在移动端上默认的一层半透明的层删掉,这个给所有的a标签添加一个:

-webkit-tap-highlight-color: rgba(0,0,0,0);

CSS3 linear-gradient的方向(角度)问题

引言

不知道你是否遇到过这种情况:当发现某些东西可以允许你很大胆的使用CSS3的时候(比如CSS3中的线性渐变),你可能就会什么都不想的写了一大堆的CSS3的代码,不管什么前缀都加上去(除非你用框架),然后每一种前缀后面的值写的都是一样的,最后在各个高端浏览器或者在手机上测试的时候,可能会出现不同的效果,甚至没有效果,这是为什么呢?这篇文章或许会解开你的一些迷惑。

linear-gradient标准语法

W3C的官网上,标准语法是这样的定义的:

<linear-gradient> = linear-gradient(
	[ [ <angle> | to 

关于transitionend

transitionend

所有添加了CSS3动画的元素都会有一个Transitionend事件,顾名思义,也就是当前元素的CSS3动画完成的时候执行一些操作。

下面来看一个例子,一个元素,当鼠标移过它的时候,我们让它在1秒内使用CSS3从宽度100PX变到200PX,动画执行完成后,弹出一句话:

<div id="ani">
		
</div>
	window.onload = function(){
		var