Адаптивный размер шрифта Awesome Icons

Я использую FontAwesome иконки в моем отзывчивом Bootstrap веб-сайт и хотите отображать значки разных размеров в зависимости от разрешения экрана.

В идеале я хотел бы отображать шрифт потрясающие значки, используя процент от ширины контейнеров, то есть 50% ширины, чтобы они масштабировались вверх и вниз. Я знаю, что я мог бы сделать это, просто используя значки SVG, но я хотел использовать FontAwesome, как я использую это в другом месте на моем сайте.

Я понимаю, что вы можете указать размер, используя классы, т.е. fa-lg или fa-2x. Будет ли лучшим решением использовать Bootstrap классы для скрытия и отображения различных размеров в зависимости от разрешения экрана, или вы можете заставить значки автоматически масштабироваться с использованием процентов?

3 ответа

Вы должны увидеть этот ответ:

Масштабирование шрифта в зависимости от ширины контейнера

Используйте единицы измерения "vw" на размер шрифта. Также проверьте таблицу поддержки браузера, которая упоминается там - это довольно хорошо.

Ура!

/* Font ico (Font-Awesome) */
.elastic-fai-xl{
    font-size:80px;
}
.elastic-fai-lg{
    font-size:50px;
}
.elastic-fai-md{
    font-size:40px;
}
.elastic-fai-sm{
    font-size:30px;
}
.elastic-fai-xs{
    font-size:20px;
}
/* Extra small devices */
@media(max-width:544px){
    .elastic-fai-group > .elastic-fai, .elastic-fai-xs{
        font-size:20px;
    }
}
/* Small devices */
@media(min-width:544px){
    .elastic-fai-group > .elastic-fai, .elastic-fai-sm{
        font-size:30px;
    }
}
/* Medium devices */
@media(min-width:768px){
    .elastic-fai-group > .elastic-fai, .elastic-fai-md{
        font-size:40px;
    }
}
/* Large devices */
@media(min-width:992px){
    .elastic-fai-group > .elastic-fai, .elastic-fai-lg{
        font-size:50px;
    }
}
/* Exrta Large devices */
@media(min-width:1200px){
    .elastic-fai-group > .elastic-fai, .elastic-fai-xl{
        font-size:80px;
    }
}

Да, лучший способ - определить CSS, предоставив глифику размер шрифта на ваш вкус:

.glyphicon-small {
    font-size: 1.2em;
}

.glyphicon-medium {
    font-size: 2em;
}

.glyphicon-big {
    font-size: 4em;
}

Но, если вы хотите адаптировать его к размеру экрана, вы можете иметь только один класс CSS и изменять его во время выполнения с помощью правила CSS @media, чтобы получить желаемые результаты:

@media screen and (max-width: 299px) {
    .glyphicon {
        font-size: 1.2em;
    }
}

@media screen and (min-width: 300px) and (max-width: 799px) {
    .glyphicon {
        font-size: 2em;
    }
}

@media screen and (min-width: 800px) {
    .glyphicon {
        font-size: 4em;
    }
}

Это очистит ваш код, и вы получите действительно хорошие результаты с минимальными усилиями по написанию кода;)

Другие вопросы по тегам