Я работаю с SIFR 3.0 в течение некоторого времени, и размер шрифта никогда не работает правильно. Я понимаю основные понятия SIFR. SIFR запускается при загрузке страницы. Он выполняет некоторые вычисления с размером шрифта, полученного в формате HTML, а затем заменяет его флэш-ролей, который примерно равен этому размеру. Из-за этого вы хотите, чтобы ваш HTML-шрифт соответствовал размеру вашего SIFR-шрифта как можно ближе.SIFR 3.0 - Размер шрифта
Моя проблема всегда возникает при попытке совместить эти два размера шрифта. Предположим, я хочу использовать шрифт SIFR для Helvetica Neue Lt примерно на 32 пикселя. HTML-эквивалент - это что-то вроде Arial Narrow примерно в 36px с некоторым расстоянием между буквами. Итак, вот что я делаю.
В sifr.css Напишу:
@media screen {
.sIFR-active h1 {
visibility: hidden;
z-index: 0 !important;
font-size: 36px;
}
}
Великий, который получает по умолчанию HTML шрифт размер мне нужно. Теперь мне нужно обновить размер шрифта SIFR. Поэтому я перехожу в sifr-config.js и пишу что-то вроде этого:
sIFR.replace(HelveticaNeueThinCond, {
selector: 'h1',
css: '.sIFR-root { color: #762123; font-size: 32px; line-height: 1em; }',
transparent: true
});
Так что сейчас все отлично работает. Это до тех пор, пока мой текст h1 не обернется более чем одной строкой. По какой-то причине, когда текст обертывает его, отображается только первая строка. Кажется, вычисляет высоту неправильно. Это очень странно, потому что я провел несколько тестов. Я взял «видимость: скрытый» с «sIFR-active h1», чтобы убедиться, что текст в формате HTML был правильным. Это, он занимает две линии. Однако, когда Flash заменяет этот текст, он дает минимальную высоту одной строки текста. Странный.
Единственный способ, который я смог найти, чтобы исправить эту проблему с упаковкой, заключался в удалении «font-size: 32px;» от "sIFR.replace (HelveticaNeueThinCond) в sifr-config. Проблема, с которой я сталкиваюсь, заключается в том, что он наследует размер шрифта, установленный в sifr.css. Теперь проблема в том, что мой текст в формате HTML больше, чем текст SIFR. мой HTML-текст будет перенесен на новую строку до того, как мой текст SIFR оставит большое пустое пространство.
Итак, как мне установить два разных размера шрифта (один для моего текста HTML и один для моего SIFR), не теряя обертывания .
единственный раз, когда я был в состоянии использовать успешно, когда у меня есть шрифт SIFR, который так похож на веб-безопасный шрифт, что они могут совместно использовать один и тот же атрибут размера шрифта.
Благодаря
Thanks Mark. Как объяснено, если я удалю размер шрифта из sIFR.replace, он по умолчанию будет использовать размер шрифта, объявленный в. SIFR-active. Я объявляю два разных размера шрифта по какой-либо причине, я хочу, чтобы sIFR.replace имел размер шрифта 32px и sIFR-active, размер шрифта 26px. Таким образом, они подходят как можно ближе. Не существует способа, чтобы у вас флэш-шрифт (sifr.replace) был другого размера, чем шрифт HTML (sifr-active)?
Обязательно ли иметь одинаковый размер шрифта? Не имеет большого смысла, если это правда. Как еще вы могли бы настроить мелодию двух шрифтов, чтобы заставить их заняться одним и тем же интервалом между буквами?
Это не отвечает на ваш вопрос, но вы пробовали cufon? Это смешно легко настроить, так что, возможно, стоит пойти ... – Skilldrick
с использованием PHP? вы можете получить fontreplace FLIR по адресу http://thephpcode.blogspot.com/2009/12/fontreplace-phpjquery-font-replacement.html – mauris
@Skilldrick - я еще не пробовал cufon. Я избегал этого, потому что я был не уверен в юридических проблемах, которые могут вызвать помехи на сервере. Это определенно стоило бы задуматься. – Nick