favicon.png vs favicon.ico-ICO 대신 PNG를 사용해야하는 이유는 무엇입니까?


442

PNG가 더 일반적인 이미지 형식이라는 사실 외에 favicon.png와 favicon.ico를 선호하는 기술적 이유가 있습니까?

PNG 선호 아이콘을 모두 지원하는 최신 브라우저를 지원하고 있습니다.

답변:


233

이 글타래에서 다양한 다른 사람들의 많은 업데이트와 노트로 인해 답변이 교체되었고 (커뮤니티 위키가 됨)

  • ICO와 PNG는 모두 알파 채널 기반의 투명성을 허용합니다.
  • ICO는 기존 브라우저 (예 : IE6)와의 하위 호환성을 허용합니다
  • PNG는 투명성에 대한 광범위한 툴링 지원을 제공하지만 @mercator에서 언급 한 Dynamic Drive 툴Photoshop 플러그인 과 같이 알파 채널 ICO를 생성하는 툴도 찾을 수 있습니다 .

자세한 내용은 다른 답변을 참조하십시오.


78
ICO는 또한 알파 채널을 허용합니다
Álvaro González

58
-1 ICO는 풀 알파 채널을 포함한 여러 해상도를 지원합니다. 그런데 1 비트 알파는 "투명도"라고합니다. ICO가 가진 유일한 한계는 길이가 256보다 크거나 같은 아이콘 (모든 방향) 이었지만 여러 번 극복되었습니다.
Christian

26
-1 .ico는 하나의 파일에서 여러 해상도를 허용합니다 (예 : 16x16 및 32x32). 따라서 바탕 화면에 바로 가기를 만들 때 아이콘이 그대로 유지됩니다.
gagarine

4
대부분의 브라우저는 링크 된 링크보다 루트에서 favicon.ico를 선호합니다. 귀하의 솔루션으로 대부분의 브라우저는 연결된 png 대신 투명하지 않은 .ico를 선택합니다 .
Lode

@lode 투명 ico 대신 투명하지 않은 ico를 선택하는 이유는 무엇입니까?
Rob Grant

367

모든 최신 브라우저 (Chrome 4, Firefox 3.5, IE8, Opera 10 및 Safari 4에서 테스트)는를 favicon.ico통해 바로 가기 아이콘을 지정하지 않은 한 항상 요청합니다 <link>. 따라서 명시 적으로 지정하지 않으면 favicon.ico404를 피하기 위해 항상 파일을 갖는 것이 가장 좋습니다. Yahoo! 작고 캐시 가능하도록 제안합니다.

알파 투명도를 위해 PNG를 사용할 필요도 없습니다. ICO 파일 은 알파 투명도 (예 : 32 비트 색상)를 지원하지만 거의 모든 도구를 사용하여 만들 수는 없습니다. 나는 정기적으로 Dynamic Drive의 FavIcon Generator 를 사용 favicon.ico하여 알파 투명도를 가진 파일 을 만듭니다 . 내가 아는 유일한 온라인 도구입니다.

또한 만들 수 있는 무료 Photoshop 플러그인 도 있습니다.


6
이 다이내믹 드라이브 도구를 잘 알려주세요! 즉시 북마크. 감사!
Marcos Buarque 3:19에

3
다시 도구, 그것은 사실이 아닙니다; 몇 가지 아이콘 디자인 도구가 있습니다. 나는 과거에 간단한 책을 썼습니다.
Christian

4
포토샵에 대한 $ (650) 달러를하지 않는 사람들을 위해, 당신은 pixlr.com (무료)을 생성, 편집 및 :) 전체 레이어 및 투명 .png 파일 저장 사용할 수 있습니다
스콧 B

3
@Pacerier .icoPS로 편집하는 것은 매우 어렵습니다 . 그리고 그렇게해도 최종 결과는 .bmp너무 나쁘지만 더 나은 형식 이라고 생각할 것 입니다 (많은 메타 데이터를 추가하여 엄청난 고통을 다시 편집합니다).
Christian

4
@mikevoermans : 여전히 PNG로 읽습니다. 대부분의 최신 브라우저는 파일 확장자에 관심이 없습니다. BTW, 이것이 가장 좋은 대답이며 받아 들여 져야합니다.
rvighne

48

.png를 파일이 좋은,하지만 질환자 파일은 알파 채널 투명성을 제공, 너무, 플러스 그들은 당신에게 이전 버전과의 호환성을 제공합니다.

예를 들어 StackOverflow 가 어떤 유형을 사용 하는지 살펴보십시오 (투명 함).

<link rel="shortcut icon" href="http://sstatic.net/so/favicon.ico"> 
<link rel="apple-touch-icon" href="http://sstatic.net/so/apple-touch-icon.png"> 

apple-itouch는 웹 사이트에 대한 바로 가기를 만드는 iPhone 사용자를위한 것입니다.


16
PNG는 또한 알파 채널을 제공 할 수 있습니다
Álvaro González

10
그래, 내 요점은 ico가 favicon으로 png가 할 수있는 모든 작업 (알파-투명도)을 수행 할 수 있다는 것입니다. 또한 0 년 이후 모든 브라우저에서 지원됩니다.
Wouter van Nifterick

위키 백과에 따르면 인터넷 익스플로러는 다음과 같은 라인을 지원하지 못할 것입니다 : <link rel = "icon"type = "image / vnd.microsoft.icon"href = " example.com/image.ico "/>
frankster

2
웹 사이트가 0 년 이후 브라우저를 지원하지 않을 가능성이 높습니다. 왜 귀찮게합니까? IE6에서 최신 웹 사이트를 사용해보고 어떤 일이 발생하는지 확인하십시오.)
Dominic

26

* .ico 파일의 이론적 장점은 둘 이상의 아이콘을 보유 할 수있는 것보다 컨테이너라는 것입니다. 예를 들어 레거시 시스템의 알파 채널과 16 색 버전의 이미지를 저장하거나 32x32 및 48x48 아이콘을 추가 할 수 있습니다 (예 : Windows 탐색기로 링크를 끌 때 표시됨).

그러나이 좋은 아이디어는 브라우저 구현과 충돌하는 경향이 있습니다.


이와 관련하여 IE9는 또한 큰 아이콘을 사용하여 win7 작업 표시 줄에 고정됩니다. stackoverflow.com/questions/3723715/…
GazB

음, 이론적? Windows 7과 함께 제공된 동일한 아이콘을 Windows 95에서 8 비트 컬러 모드로 사용할 수 있습니다. 나는 그것이 실용적이라고 생각한다.
Christian

이 답변은 2009 년에 작성되었습니다. 당시의 브라우저 장면은 현재와 크게 다릅니다.
Álvaro González

15

PNG에는 두 가지 장점이 있습니다. 크기가 작고 즐겨 찾기 아이콘을 제외하고는 더 널리 사용되고 지원됩니다. ICO 전에 언급했듯이 여러 크기의 아이콘을 가질 수 있으며 이는 데스크탑 응용 프로그램에는 유용하지만 웹 사이트에는 그리 크지 않습니다. 응용 프로그램의 루트에 favicon.ico를 넣는 것이 좋습니다. 웹 사이트 페이지 헤드에 액세스 할 수있는 경우 태그를 사용하여 png 파일을 가리 킵니다. 따라서 오래된 브라우저는 favicon.ico와 최신 브라우저는 png를 표시합니다.

Png 및 Icon 파일을 만들려면 The Gimp을 추천 합니다.


3
웹 사이트에는 그리 많지 않습니까? 모든 사람이 망막 같은 디스플레이를 사용할 때까지 기다리십시오. 갑자기 그들이
즐겨 찾기 아이콘

1
우리는 파비콘에 대해 이야기하고 있기 때문에 지원 문제는 실제로 당신이 말하는 것과 반대입니다
David Heffernan

1
+1 원래 질문을 해결하고 투명성에 얽매이지 않습니다. 또한 응용 프로그램 언급 하지 지원 질환자 형식을.
kovacsbv

12

Google+와 같은 일부 소셜 도구는 간단한 방법을 사용하여 외부 링크에 대한 파비콘을 가져와 http://your.domainname.com/favicon.ico를 가져옵니다.

HTML 컨텐츠를 프리 페치하지 않으므로 <link>태그가 작동하지 않습니다. 이 경우 mod_rewrite 규칙을 사용하거나 파일을 기본 위치에 배치 할 수 있습니다.


1
그것이 사실인지 거짓인지 모르지만 그것은 내가 가지고있는 png 외에도 루트로 favicon.ico를 작성하는 것이 결정적인 논거였습니다.
Alexei Tenitski

2
나는 구글 플러스 팀에있는 폴 린더 너를 통해 telly.com의 직장에서 이것을 알고 있습니다. plus.google.com/117259934788907243749/about
jdavid.net

파비콘을 루트에 배치하는 것이 사실상 표준 이므로이 답변에서 언급 한 것과 같은 이유로이를 준수 할 것입니다.
Stijn de Witt

8

ico는 png 일 수 있습니다 .

보다 정확하게는 모든 사람이 ico와 강력하게 연관시키는 일반적인 비트 맵 + 알파 대신이 최소 컨테이너 형식 내에 하나 이상의 png를 저장할 수 있습니다.

지원은 구식이며 Windows Vista (2007)에 나타나며 아이콘 편집 소프트웨어는 아니지만 브라우저에서 잘 지원됩니다.

유효한 모든 png (헤더 포함) 앞에 6 바이트 ico 헤더 와 16 바이트 이미지 디렉토리 가 추가 될 수 있습니다 .
김프는 기본적으로 지원합니다. ico로 내보내고 "압축 (PNG)"을 선택하십시오.


3

신뢰할 수있는 IE6 호환성을 원한다면 어떠한 경우에도 PNG를 사용하지 마십시오.


19
IE6의 디렉토리 트리에있는 ico와 <link>최신 브라우저의 페이지 코드에있는을 통해 지정된 PNG를 모두 사용할 수없는 이유는 없습니다 .
Amber

10
왜 둘 다 사용하겠습니까? ico를 만드는 것을 귀찮게한다면 png를 사용하면 어떤 이점이 있습니까? 분명히 추가 작업과 추가 코드 일뿐입니다.
Mr_Chimp

@Mr_Chimp png는 개방형 표준이며 더 미래 지향적입니까? 한 줄의 추가 마크 업입니다.
Wyatt8740

9
안녕 @ Orcra-나는 당신이 ~ 8 년 전에이 답변을 썼을 때 이것을 읽었을 때 IE6와 같은 것들을 고려해야했다면 너무 재밌지 않을 것이라고 생각합니다. :) 오늘 뭔가 관련
aehlke

3
@aehike 당신은 공정한 포인트를 가지고 있습니다. 타임 스탬프를 확인하지 않은 것은 좋지 않습니다.
Orcra

0

가치있는 것을 위해 나는 이것을한다 :

    <!-- Favicon - Generic -->
    <link rel="icon" href="path/favicon-32_x_32.png" sizes="32x32">
    <link rel="icon" href="path/favicon-57_x_57.png" sizes="57x57">
    <link rel="icon" href="path/favicon-76_x_76.png" sizes="76x76">
    <link rel="icon" href="path/favicon-96_x_96.png" sizes="96x96">
    <link rel="icon" href="path/favicon-128_x_128.png" sizes="128x128">
    <link rel="icon" href="path/favicon-192_x_192.png" sizes="192x192">
    <link rel="icon" href="path/favicon-228_x_228.png" sizes="228x228">
    <!-- Favicon - Android -->
    <link rel="shortcut icon" href="path/favicon-196_x_196.png" sizes="196x196">
    <!-- Favicon - iOS -->
    <link rel="apple-touch-icon" href="path/favicon-120_x_120.png" sizes="120x120">
    <link rel="apple-touch-icon" href="path/favicon-152_x_152.png" sizes="152x152">
    <link rel="apple-touch-icon" href="path/favicon-180_x_180.png" sizes="180x180">

그리고 나는 여전히 favicon.ico를 루트로 유지합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.