webapp的favicon应该怎样组织代码
处理过那么多index 页面了那么关于特别针对于此页的favicon是时候详细的总结一下了
它是网站的头像,它出现在浏览器的收藏夹中(标题的旁边) ,浏览器标签页的左上角,微信公众号的logo,保存网页快捷方式到桌面则会变成桌面的图标等
常用尺寸为16×16、32×32、48×48,当然随着出现地方不同需要不同的尺寸,如出现在win8的metro菜单上
以下某百科上给的意见 加上有利seo的mce_href属性
<link rel="icon" href="/dir/favicon.ico" mce_href="/dir/favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="/dir/favicon.ico" mce_href="/dir/favicon.ico" type="image/x-icon">
<link rel="icon" href="animated_favicon1.gif" type="image/gif" >
不过我通常这样写(也不会加mce_href),下面是我的方案
<link rel="shortcut icon" href="/favicon.ico">
<link rel="icon" href="/favicon.ico">
<link rel="apple-touch-icon-precomposed" href="/favicon.ico">
<link rel="Bookmark" href="/favicon.ico" >
如果你不想考虑其它,那么完全可以一行代码 这样 <link rel="shortcut icon" href="/favicon.ico" /> 加进head里
甚至可以更省事,因为现代的浏览器会自己主动去访问web根目录找名为favicon.ico的文件,你只需要做的事只是把一个32X32的favicon.ico放到那个目录下便好.
但是这样没有态度. 就仿佛说了半天跟没说一样,所以不能这样
那么来明确一下
<link rel="shortcut icon" href="http://a.com/favicon.ico" type="image/vnd.microsoft.icon">
//第一行是几乎必需的 告诉浏览器去找哪个文件 shortcut 其实是为ie而加的
<link rel="icon" href="http://a.com/favicon.ico" type="image/vnd.microsoft.icon">
//第二行是给浏览器的备用图像,当第一个文件找不到或者怎样挂了时,第二行发挥作用,
//note: type的mime格式并不重要,不写type也没关系,所以我不写
<link rel="apple-touch-icon-precomposed" href="xxx.png">
//这一行代码是给苹果设备用的 可以在iPhone/iPod Touch上将网页"添加至主屏幕"时,去掉icon上那难看的透明层.
//note: favicon不只支持ico文件,它也支持png文件,非常自由. 火狐等主流浏览器上 还支持 gif动图 如:
<link rel="icon" type="image/gif" href="animated_favicon.gif" > // icon是动画的gif <link rel="Bookmark" href="favicon.ico" /> //特别指明 收藏夹中的使用的icon图标 <link rel="icon" type="image/png" href="/path/image.png"> //png格式的icon 不加type也可以 此外关于苹果还可以设置的更详细些 使用苹果的私有属性 apple-touch-icon
<link rel="apple-touch-icon" href="/custom_icon.png"/> 同时支持sizes属性,可以用来放置对应不同的设备。
<link rel="apple-touch-icon" sizes="57x57" href="touch-icon-iphone.png" />
<link rel="apple-touch-icon" sizes="72x72" href="touch-icon-ipad.png" />
<link rel="apple-touch-icon" sizes="114x114" href="touch-icon-iphone4.png" />
<link rel="apple-touch-icon" sizes="144x144" href="apple-touch-icon-ipad3-144.png" />
57×57(默认值)的图标对应320×640的iphone老设备,72×72对应ipad,114×114对应retina屏的iPhone及iTouch。ipad3对应144×144的高分辨率。
这时有一些要注意 使用apple-touch-icon时,不需要对图片进行圆角和高亮,系统会去做桌面图标这种处理,当然我觉得默认处理出来的效果那个透明层很难看,
此时使用上面apple-touch-icon-precomposed 属性,但这时图片的圆角和高亮就需要自己去在图片上做了
关于它,你还可以看看这里了解更多
http://www.uisdc.com/design-perfect-favicon-icon
http://www.w3cplus.com/css/understand-the-favicon.html
此外再提供两个生成它的在线工具
http://www.faviconico.org/favicon
http://realfavicongenerator.net/
webapp的favicon应该怎样组织代码的更多相关文章
- DDD:订单管理 之 如何组织代码
背景 系统开发最难的是职责的合理分配,或者叫:“如何合理的组织代码”,今天说一个关于这方面问题的示例,希望大家多批评. 示例背景 参考数据字典 需求 OrderCode必须唯一. Total = Su ...
- Flask实战-留言板-安装虚拟环境、使用包组织代码
Flask实战 留言板 创建项目目录messageboard,从GreyLi的代码中把Pipfile和Pipfile.lock文件拷贝过来,这两个文件中定义了虚拟环境中需要安装的包的信息和位置,进入m ...
- Python基础-修改excel、redis、接口开发、组织代码
pymysql模块补充内容 1. 游标.description():显示表的字段属性 (什么是游标:游标用于交互式应用,就好比word里的光标一样,要修改某个地方,要先把光标移动到这里) 用好这个方法 ...
- Unity3D如何有效地组织代码?(转)
问题: Unity3D可以说是高度的Component-Based Architecture,同时它的库提供了大量的全局变量.如何来组织代码呢? 答: - Unity有一些自身的约定,譬如项目里的Ed ...
- 求推荐go语言开发工具及go语言应该以哪种目录结构组织代码?
go语言的开发工具推荐? go语言开发普通程序及开发web程序的时候,应该以哪种目录结构组织代码? 求推荐go语言开发工具及go语言应该以哪种目录结构组织代码? >> golang这个答案 ...
- Unity3D如何有效地组织代码?
本文整理自知乎,原文链接:http://www.zhihu.com/question/21070379 问题: Unity3D可以说是高度的Component-Based Architecture,同 ...
- Go:如何组织代码
备注 此文主要是对官方教程的学习总结,官方教程:http://golang.org/doc/code.html. 工作空间(Workspaces) Go代码必须保持在一个workspace,works ...
- .NET C#基础(6):命名空间 - 组织代码的利器
0. 文章目的 面向C#新学者,介绍命名空间(namespace)的概念以及C#中的命名空间的相关内容 1. 阅读基础 理解C与C#语言的基础语法 2. 名称冲突与命名空间 2.1 一个生活例 ...
- requirejs实验001.对我来说,用AMD的方式来组织代码并不轻松.
http://www.requirejs.org/ http://www.requirejs.cn/ http://requirejs.readthedocs.org/en/1.0.1/ 目录结构: ...
随机推荐
- 使用windows api安装windows服务程序(C#)
3个步骤: 1.安装器代码编写 2.安装器工具类编写 1)安装.启动服务) 2)卸载服务 3.windows服务程序编写(参考:多线程.方便扩展的Windows服务程序框架) 4.代码下载,在文末(注 ...
- 数据分析处理库Pandas——数据透视表
数据 按指定的行列值显示 求和 按行求和 按列求和 数据 求平均 备注:按性别计算每个等级船票的平均价格. 备注:每个等级船舱中每种性别获救的平均值,也就是获救的比例. 备注:每种性别未成年人获救的平 ...
- 守护进程,进程安全,IPC进程间通讯,生产者消费者模型
1.守护进程(了解)2.进程安全(*****) 互斥锁 抢票案例3.IPC进程间通讯 manager queue(*****)4.生产者消费者模型 守护进程 指的也是一个进程,可以守护着另一个进程 一 ...
- C语言函数篇(一)函数的组成
函数的组成: 函数名 输入参数 返回值 返回值 函数名 (输入参数){ 执行体 } 用指针保存函数: int func(int a, int b, char c){ } --> int (*fu ...
- python使用网易邮箱发邮件
# -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText import email.mime.multip ...
- zeppelin的安装与使用
想起马上就能回家了,心情是按捺不住的激动,唉,还是继续努力吧,其实不希望那么快就回家,感觉回去了就意味着马上就要回来了,人真的是神奇呀 今天我们来使用zeppelin,这个就是可以把我们查找的数据可以 ...
- PHP代码审计2-常用超全局变量,常用命令注入,常用XSS漏洞审计,文件包含
超全局变量 $GLOBALS — 引用全局作用域中可用的全部变量$_SERVER — 服务器和执行环境信息$_GET — HTTP GET 变量$_POST — HTTP POST 变量$_FILES ...
- java练习——接口与继承
父类与子类的构造方法: 如果父类中有一个默认无参的构造方法,那么子类的构造方法中会自动进行调用.如果父类有自己的构造方法,且这时父类没有默认无参的构造方法,那么在子类的构造方法中,必须要调用父类的某个 ...
- 4 . GET方法实现文章分类
复习:博客站点 <!DOCTYPE html> {% load staticfiles %} <html> <head> <meta charset=&quo ...
- Android字体大小怎么自适应不同分辨率?
今天有人问我,android系统不同分辨率,不同大小的手机,字体大小怎么去适应呢?其实字体的适应和图片的适应是一个道理的. 一. 原理如下: 假设需要适应320x240,480x320分辨率.在res ...