一、CSS Sprite(雪碧图|精灵图)指什么? 有什么作用?

CSS雪碧 即CSS Sprite,也有人叫它CSS精灵,是一种CSS图像合并技术,该方法是将小图像和背景图片合并到一张图片上,然后利用css的背景定位来显示的图片部分。
作用:

  • 减少加载网页图片时对服务器的请求次数;

  • 提高页面的加载速度;

  • 减少鼠标滑过的一些bug.

二、img标签和CSS背景使用图片在使用场景上有何区别?

如果一张图片是网页内容的一部分,就该用img,否则建议用CSS背景图。要注意logo是否属于网页内容的一部分。

示例:

如图:百度logo就是img,二维码就是CSS背景图呈现出来的。

在网页加载过程中,以CSS背景图存在的图片会等到结构加载完成之后开始加载,而html中的标签img是网页结构的一部分,会在加载结构的过程中加载,如果引入一个很大的图片,

在图片下载完成之前,img内容都不显示。但是CSS引入同样的图片,网页内容和结构加载完成,才开始加载背景图片,不会影响用户浏览网页内容。

三、title和 alt属性分别有什么作用?

  • alt属性是为了给那些不能看到你文档中图像的浏览者提供文字说明的。且长度必须少于100个应为字符或者用户必须保证替换文字尽可能的短。这包括那些使用本来就不支持图像显示或者图像显示被关闭的浏览器的用户,视觉障碍的用户和使用屏幕阅读器的用户等。

  • title属性为设置该属性的元素提供建设性的信息。使用title属性提供非本质的额外信息。

四、background: url(abc.png) 0 0 no-repeat;这句话是什么意思?

background:url(abc.png) 0 0 no-repeat;设置了背景图片的属性:

background-img:url(abc.png)指定要使用的背景图片;

background-position:0 0:指定背景图片的位置;

background-repeat:no-repeat:指定背景图片仅显示一次。

示例:

五、background-size有什么作用? 兼容性如何? 常用的值是?

background-size:用于控制背景图片的大小。

兼容性:

浏览器 background-size
Firefox 3.6, Firefox 4 支持
Chorme10 支持
IE6,IE7,IE8 不支持
IE9 支持
Opera10,Opera11 支持

常用的值是:

  • auto:此值为默认值,保持背景图片的原始宽度和高度;

示例:

  • length:用于给background-size一个具体的值;

示例:

其中第一个值是给背景图片添加了宽度;第二个值是给背景图片添加了高度值

  • percentage

示例:

  • cover:图片会放大到适合容器的尺寸

示例:

  • contain

示例:

六、如何让一个div水平居中?如何让图片水平居中?

使得div水平居中使用margin:0 auto;示例:

图片水平居中:

在它所在的块级元素中添加text-align:center;

示例:

七、如何设置元素透明? 兼容性?

可以使用:

  • css3的opacity:x,x的取值从0-1

  • css3的rgba(red green blue alpha),alpha的取值从0-1

兼容性:

opacity

浏览器 兼容性
IE6,7,8 不支持
IE9,10,11 支持
chrome2.0.x 支持
Firefox3.0.10,3.5 支持

rgba

浏览器 兼容性
IE6,7,8 不支持
IE9,10,11 支持
chrome2.0.x 支持
Firefox3.0.10,3.5 支持

八、opacity和 rgba都能设置透明,有什么区别?

opacity会继承父元素的 opacity 属性,而RGBA设置的元素的后代元素不会继承不透明属性。

示例:

参考:

  1. CSS background-repeat 属性

  2. CSS background 属性

  3. When to use IMG vs. CSS background-image?

  4. 翻译 – CSS3 Backgrounds相关介绍

  5. CSS3 Background-size

注:版权所有,若有转载请注明来源

CSS常见技巧的更多相关文章

  1. CSS 代码技巧与维护 ★ Mozilla Hacks – the Web developer blog

    原文链接:https://hacks.mozilla.org/2016/05/css-coding-techniques/ 译文链接 :http://www.zcfy.cc/article/css-c ...

  2. CSS hack技巧

    CSS hack技巧一览,原文来自CSDN freshlover的博客专栏<史上最全CSS Hack方式一览> 什么是CSS hack 由于不同厂商的流览器或某浏览器的不同版本(如IE6- ...

  3. 你所不知道的 CSS 滤镜技巧与细节

    承接上一篇你所不知道的 CSS 动画技巧与细节,本文主要介绍 CSS 滤镜的不常用用法,希望能给读者带来一些干货! OK,下面直接进入正文.本文所描述的滤镜,指的是 CSS3 出来后的滤镜,不是 IE ...

  4. 你所不知道的 CSS 阴影技巧与细节

    关于 CSS 阴影,之前已经有写过一篇,box-shadow 与 filter:drop-shadow 详解及奇技淫巧,介绍了一些关于 box-shadow 的用法. 最近一个新的项目,CSS-Ins ...

  5. 你所不知道的 CSS 阴影技巧与细节 滚动视差?CSS 不在话下 神奇的选择器 :focus-within 当角色转换为面试官之后 NPOI 教程 - 3.2 打印相关设置 前端XSS相关整理 委托入门案例

    你所不知道的 CSS 阴影技巧与细节   关于 CSS 阴影,之前已经有写过一篇,box-shadow 与 filter:drop-shadow 详解及奇技淫巧,介绍了一些关于 box-shadow  ...

  6. 【CSS】346- 你所不知道的 CSS 阴影技巧与细节

    偷懒了1个多礼拜,在工作饱和的情况下,怎么坚持学习?今天的分享来自@Coco国服第一切图仔,我们聊聊CSS属性box-shadow- 关于 CSS 阴影,之前已经有写过一篇,box-shadow 与 ...

  7. 前端进阶系列(二):css常见布局解决方案

    水平居中布局 margin+定宽 <div class="parent"> <div class="child">Demo</di ...

  8. 常用的CSS小技巧

    实际开发过程中会遇到一些需要用CSS小技巧处理的布局问题,现在分享几个个人工作中遇到的小问题和解决方案. 1.inline元素间的空白间隙 这里要介绍一个神器font-size:0. 如果你写了个列表 ...

  9. css 垂直居中技巧

    CSS垂直居中技巧,我只会23个,你会几个?自古以来(是有多?~),网页CSS的垂直居中需求始终没有停过,而其困难度也始终没有让人轻松过,经过了每位开发先烈的研究后,据说CSS的垂直居中技巧已达到近十 ...

随机推荐

  1. 使用 Nodejs 搭建简单的Web服务器

    使用Nodejs搭建Web服务器是学习Node.js比较全面的入门教程,因为要完成一个简单的Web服务器,你需要学习Nodejs中几个比较重要的模块,比如:http协议模块.文件系统.url解析模块. ...

  2. 【大型网站技术实践】初级篇:借助LVS+Keepalived实现负载均衡

    一.负载均衡:必不可少的基础手段 1.1 找更多的牛来拉车吧 当前大多数的互联网系统都使用了服务器集群技术,集群即将相同服务部署在多台服务器上构成一个集群整体对外提供服务,这些集群可以是Web应用服务 ...

  3. 在一个空ASP.NET Web项目上创建一个ASP.NET Web API 2.0应用

    由于ASP.NET Web API具有与ASP.NET MVC类似的编程方式,再加上目前市面上专门介绍ASP.NET Web API 的书籍少之又少(我们看到的相关内容往往是某本介绍ASP.NET M ...

  4. 移动端IOS点击事件失效解决方案

    解决方案 解决办法有 4 种可供选择: 1 将 click 事件直接绑定到目标元素(即 .target)上 2 将目标元素换成 <a> 或者 button 等可点击的元素 3 将 clic ...

  5. CodeSimth - .Net Framework Data Provider 可能没有安装。解决方法

    今天想使用CodeSimth生成一个sqlite数据库的模板.当添加添加数据库的时候发现: .Net Framework Data Provider 可能没有安装. 下面找到官方的文档说明: SQLi ...

  6. 深入理解javascript的getTime方法

    1.理解getTime getTime() 方法返回一个时间的格林威治时间数值. 可以使用这个方法把一个日期时间赋值给另一个Date 对象. 语法: dateObj.getTime() 参数: 无. ...

  7. Linux基础介绍【第八篇】

    Linux网络基础 网线 568A 568B 线序:橙白橙 绿白蓝 蓝白绿 棕白棕 交换机.路由器 交换机:DLINK.H3C.CISCO 交换机(Switch)是一种用于电信号转发的网络设备.它可以 ...

  8. python select网络编程详细介绍

    刚看了反应堆模式的原理,特意复习了socket编程,本文主要介绍python的基本socket使用和select使用,主要用于了解socket通信过程 一.socket模块 socket - Low- ...

  9. 在Linux虚拟机下配置jdk的环境变量

    1.到Oracle公司的官网里下载好jdk,网址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133 ...

  10. Linux设备文件简介(转载)

    Linux 中的设备有2种类型:字符设备(无缓冲且只能顺序存取).块设备(有缓冲且可以随机存取).每个字符设备和块设备都必须有主.次设备号,主设备号相同的设 备是同类设备(使用同一个驱动程序).这些设 ...