Як додати значок у рейки 3.2


74

Я знаю, що нові програми для рейок постачаються з порожнім файлом favicon.ico. Я хочу знати, як я продовжую додавати значок. Я знаю, що ви можете використовувати favicon_link_tagпомічник, але я не впевнений, як заповнити файл favicon.ico. Чи використовуєте ви генератори Favicon? Якщо так, то який із них найкращий?

Я також хочу мати можливість кешувати його, чи робить це рейки також автоматично?

Дякую


3
stackoverflow.com/questions/6130593/… Цей допис вам допоможе
Norto23

Відповіді:


69

згенеруйте свій значок, наприклад, тут: http://www.favicon.cc/ і розмістіть у папці public /

ОНОВЛЕННЯ Favicon у загальній папці не попередньо скомпільовано, і його можна кешувати тривалий час. Схоже, що краще використовувати favicon_link_tag, щоб уникнути проблем з оновленням favicon. Я не знаю, що браузери потребували значка у root. Відповідно до favicon wiki підтримують усі сучасні браузери

<link rel="shortcut icon" href="favicon path" /> (favicon_link_tag)

Дякую. З якоїсь причини я бачу значок, коли він є www.website.com, але коли я просто заходжу до website.comнього, він не відображається?
noob

26
Отже, значок не надходить у трубопровід активів?
Джеймс,

4
Краще / стандартно розміщувати значок на вашому домені.com/favicon.ico, оскільки деякі браузери запитують їх безпосередньо (навіть коли ви не використовуєте для нього мета-тег).
yorch

114

Просто додайте це до <head></head>розділу своїх макетів:

<%= favicon_link_tag 'favicon.ico' %>

Помістіть зображення favicon.ico в те, /app/assets/images/якщо ви використовуєте конвеєр активів, і в те, /public/images/якщо ви не використовуєте.

Крім того, під час використання Ruby 2.0 із Rails 3.0.20 (а, можливо, і 3.0.x) виникає помилка, яка створює виняток при спробі відобразити favicon.ico.

Виправлення полягає у розміщенні такого коду в application_controller.rb:

  config.relative_url_root = ""

Мені подобається це рішення. Я шукаю цю проблему, тому що хочу помістити чіткі ідентифікатори у значок для вкладки dev / stage / prod, і це те, що мені потрібно!
asfallows

хм ... я просто мав найдивніший вираз цієї помилки, просто маючи favicon.ico у моєму загальнодоступному каталозі (який чудово працює в розробці та на heroku) не працював і дивно намагався заглянути на "myhostname.com/favicon. ico "дасть мені екран привітання nginx (той, де ви щойно встановили nginx, не знаю, чому, саме тому я публікую це, бо це неймовірно дивно для мене), тоді як тільки я додав favicon_link_tag все було добре, з'явився значок, і дивлячись на нього безпосередньо спрацювало. все це з інакше чудового додатка.
Mike HR

9

Поки всі ці відповіді говорять про створення піктограми 16x16, реальність полягає в тому, що ви повинні створювати як 16x16, так і 32x32, щоб підтримувати дисплеї сітківки. Жоден з інтернет-генераторів не зробив цього дуже добре.

На Mac існує чудова програма за 5 доларів під назвою Icon Slate , яка дозволяє легко створювати обидва формати в одному файлі ICO.

У Windows я з великим успіхом використовував Axialis IconWorkshop , але це набагато важчий інструмент і коштує значно дорожче - приблизно 50 євро.

Обидва створять файл ico із зображеннями 16x16 та 32x32.

Якщо ви використовуєте конвеєр активів, скоріше використовуйте папку app / assets / images, а не / public. Кількість браузерів, що ігнорують linkтег, швидко наближається до нуля, тому стрибати через обручі для їх розміщення не варто.

Як згадувалося в інших відповідях, використовуйте це в headдля відображення:

<%= favicon_link_tag 'favicon.ico' %>

4
realfavicongenerator.net - це безкоштовно та чудово! не витрачайте гроші;)
М.Махінегун

3
Інвестування у чудові інструменти ніколи не витрачає ваші гроші. Хоча цей сайт кращий за більшість, він навіть не порівнянний з таким інструментом, як IconWorkshop, або приємним користувальницьким досвідом Icon Slate, який також можна використовувати в автономному режимі.
Тім Салліван


4

напишіть у application.html.haml :

= favicon_link_tag '/images/favicon.ico'

розмістити файл favicon.ico в директорії:

project/public/images

2

Вам в значній мірі потрібен файл зображення розміром 16x16 пікселів, який називається favicon.ico, і він повинен бути публічно доступний у кореневій частині вашого сайту.

Ви завжди можете використовувати основний редактор зображень, щоб перетворити свій логотип або інше зображення у формат .ico. Є безкоштовні варіанти, такі як Gimp, які можуть зробити такі чудові іконки на основі існуючого зображення кращими, ніж онлайн-генератори іконок.


1

Я спробував посилання вище, і послугами було не дуже просто користуватися. Я знайшов це посилання на іншому сайті, і він бездоганно скопіював мій файл .png і був дуже простим у використанні. Я думав, що поділюсь цим посиланням теж, оскільки вважаю, що це кращий сервіс.

http://www.chami.com/html-kit/services/favicon/


1
Це не дає відповіді на запитання. Щоб критикувати або вимагати роз’яснень від автора, залиште коментар під його публікацією.
OneChillDude

Зроби в майбутньому. Чудова порада. Я все ще був досить великим нубом, коли залишив цей коментар.
Matt

1

Не робив цього роками, але Gimp здатний зберігати файли .ico з декількома зображеннями різних розмірів. Вам просто потрібно експортувати у формат .ico з деякими видимими шарами.


1

Щоб створити значок для всіх платформ (не тільки для браузерів для настільних ПК), ви можете використовувати RealFaviconGenerator та дорогоцінний камінь rails_real_favicon:

  • Перейдіть до RealFaviconGenerator і надішліть своє зображення. Ви можете створити свою піктограму, платформу на платформі: iOS, Android тощо.
  • Коли ваша піктограма буде готова, натисніть вкладку "Rails", щоб отримати вказівки щодо встановлення значка у проект Rails. В основному вас попросять:
    • Додайте rails_real_favicon самоцвіт вамGemfile
    • Створіть новий файл з іменем favicon.json . Цей файл описує піктограми, які ви щойно створили.
    • Біжи rails generate favicon щоб насправді створити піктограми та HTML-код.
    • Додайте render 'favicon'свої макети, щоб вставити HTML-код на свої сторінки.

Перевага цього рішення полягає в тому , що він вводить файли Favicon ( favicon.ico, apple-touch-icon.png, а йbrowserconfig.xml і manifest.json) в трубопроводі активів.

Повна інформація: Я автор програми RealFaviconGenerator.


0

Я знайшов, що мені вдалося вирішити наступне:

  1. Перейдіть на сторінку http://realfavicongenerator.net/favicon_checker і переконайтеся, що у вас хороший значок. Якщо ви цього не зробите, використовуйте їх інструмент для створення одного (а також багатьох інших корисних та пов’язаних значків). Примітка: для цього потрібно мати хорошу піктограму (наприклад, PNG), яка використовуватиметься як основа для значка.
  2. Скористайтеся пропозицією http://realfavicongenerator.net використовувати ?v=versionопцію, яка допоможе подолати проблему кешування браузера. Це мені допомогло.
  3. Скопіюйте favicon.ico до publicта app/assets/images. Вам знадобиться лише один, але якщо ви не знаєте в який, копіювання в обидва місця не зашкодить ... або ви можете поекспериментувати, щоб побачити, який з них працює - скористайтеся?v=version для проведення тесту.
  4. Додайте наступний рядок у <head></head> розділі своїх макетів у файлах app / views / layout (наприклад application.html.erb):

<%= favicon_link_tag 'favicon.ico' %>

Сподіваємось, це забезпечує простий рецепт. Я впевнений, що якщо я щось пропустив, хтось може та покращить цю відповідь.


Я автор програми RealFaviconGenerator. Дякуємо, що порекомендували! Вам слід ще раз перевірити RFG: інтеграція з Rails простіша, ніж будь-коли :) І немає потреби у версії, оскільки це обробляє конвеєр активів.
philippe_b

Я думав про використання RealFaviconGenerator у своєму проекті. Наскільки мені здається, що він не підтримує різні значки одночасно для одного додатка, чи не так? Справа в тому, що мій проект відповідає на декілька доменних імен і представляє щось різне для кожного з них, це має містити інший значок. Чи можливо це за допомогою RealFaviconGenerator?
Девід Ревело

0

У мене виникла проблема під час розміщення файлу /public/favicon.ico, я використовую AWS EBS.

Я міг виправити помилку.

Для мене найкращим рішенням було розміщення файлу /app/assets/images/favicon.icoта використання= favicon_link_tag 'favicon.ico'

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.