Учетная запись для пользователей Chrome, которые установили свои шрифты на Large или X-Large - PullRequest
0 голосов
/ 03 августа 2011

Хорошо, у меня есть клиент, жалующийся на то, что пользователь, который устанавливает слишком большие шрифты в Chrome, вызывает плохую визуализацию сайта - что он и делает. Моя естественная реакция заключалась в том, чтобы сказать им, что мы можем либо уменьшить размер шрифта для них, либо они могут просто сказать людям использовать обычные шрифты для их браузера. Я знаю, что это хорошая практика, чтобы попытаться создать дизайн, который бы подходил как можно большему количеству браузеров, но должен быть предел. Люди делают сумасшедшие с% ^ &. Мне кажется, что вы должны сказать людям, чтобы они справлялись с этим через некоторое время, иначе вы никогда не сможете сделать что-то, что на самом деле выглядит хорошо для 99% пользователей. В любом случае, кто-нибудь знает об обходной путь? Я также приму мнение о хорошем ответе для клиента.

Обновление

Хорошо, поэтому я решил установить для страницы значение em вместо px. Как насчет элементов управления ASPX, которые вы можете указать только целое значение для высоты и ширины? Я предполагаю, что это целочисленное значение будет установлено в пикселях.

Ответы [ 3 ]

2 голосов
/ 03 августа 2011

Идеальным решением является использование ширины em (например, 400em) вместо ширины в пикселях (например, width: 960px).Это основывает ширину ваших элементов на размере шрифта, а не на строгом значении в пикселях.

Однако, чтобы достичь этого, вы должны сделать это с самого начала проекта.Кроме того, страницы не будут идеальными пиксельными шедеврами, которые ваш дизайнер вручил вам в Photoshop.

Re: Обновление

Я не совсем уверен, но если ввсе возможно, укажите атрибут CssClass вместо атрибута width, а затем укажите на него в своем CSS, чтобы использовать em s вместо пикселей.

1 голос
/ 03 августа 2011

Я думаю, что ваш клиент вполне прав, чтобы указать на это. Обычно причина, по которой люди устанавливают размеры шрифта браузера выше «нормального» порога, заключается в плохом зрении. По этой причине это не только хорошая практика, но и знак порядочности, чтобы приспособиться к людям, которым не повезло иметь зрение 20/20.

Решение проблемы - использование em размеров и min-widths. в то время как это не приведет к идеальным макетам в пикселях, оно создаст идеальные относительные макеты. Все макеты будут иметь одинаковые пропорции независимо от размера шрифта.

Оказывается, что вычисление размеров таких вещей, как кнопки, также намного проще при использовании em.

Вот как ты это делаешь.

body {
    // Allow the font size to be as big as the browser wants.
    font-size: 100%;
}

.main-container {
    // allow you body container to stretch as big as it needs
    // You could also specify this in em's
    min-width: 960px;
}

.button {
    // want some bigger text, that's fine
    font-size: 1.2em;
    // the rest of button is now normalised so 1em is actually 1.2em

    // set the width by counting the characters in the button text
    // remember to take any padding on the button into account
    // in the width
    width: 10em;
    padding: 1em;
}

Довольно просто приблизиться к идеальному пикселю, используя em, просто попробуйте запомнить, что обычный размер шрифта в браузере составляет около 16px, поэтому 5px примерно 1/3 от 16 так в em х 0.3em.

Другими словами, в качестве ориентира или общего правила расчета размеров.

    0.3em = 5px

О em нужно помнить, что они наследуются от родительского контейнера.

, например

.my-content {
    font-size: 1.2em;
}

.my-content .my-paragraph {
    font-size: 1em; 
    // this is actually 1.2em because it inherits and normalises
    // from it's parent
}

my.content .my-paragraph .my-span {
    font-size: 1.2em;
    // is 1.2 + 20% 
}

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

Самое замечательное в вашем сайте сейчас в том, что он будет отлично выглядеть в любом размере. Это будет здорово на множестве мобильных устройств, планшетов, мониторов с высоким разрешением, 50-дюймовых плоских экранов или 50-футовых информационных дисплеев.

И вы помогли всем людям с плохим зрением увидеть ваш сайт и вашу тяжелую работу во всей его относительной красоте.

1 голос
/ 03 августа 2011

Как насчет удобной кнопки в нижней части главного окна, которая гласит: «Используйте сайт, предназначенный для более крупных шрифтов», и когда пользователь нажимает на него, он просто передает другой файл CSS на свой компьютер со шрифтами соответствующего размера ? Я думаю, что вы должны сделать его максимально прозрачным для кодирования вашего сайта, насколько это возможно, в определенных пределах. Я бы посмотрел на исправление CSS для этой проблемы (возможно, чтобы конкретный пользователь отправил вам свои настройки для тестирования), а затем исправил и забыл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...