Есть ли действительно какая-либо точка к использованию относительной калибровки шрифта в CSS?

Итак, вы ищете способ сопоставить введенные пользователем строки со строками в all_timezones и найти действительный часовой пояс.

Насколько я знаю, нет встроенной функции, которая делает это, вы должны сделать это самостоятельно.

Это не непосредственная задача, так как у вас может быть несколько вариантов (скажем, пользовательский ввод просто «Европа»), и вы должны принять это во внимание

Возможный способ сделать это следующее: [ 116]

import datetime
import time
import pytz

country = input("Contry name: ")
now_utc = datetime.datetime.now(pytz.timezone('UTC'))

fmt = "%H:%M %p"

while True:
    possible_countries = [ac for ac in pytz.all_timezones if country in ac]
    if len(possible_countries) == 1:
        cc = possible_countries[0]
        timecountry = now_utc.astimezone(pytz.timezone(cc))
        print(timecountry.strftime(fmt))
        break
    elif len(possible_countries) > 1:
        print("Multiple countries are possible, please rewrite the country name")
        for cs in possible_countries:
            print(cs)
        country = input("Contry name: ")
    else:
        print("No idea of the country, here are the possible choices")
        for cs in pytz.all_timezones:
            print(cs)
        country = input("Contry name: ")

С пониманием списка я ищу все строки в all_timezones, который содержит ввод пользователя. Если есть только один, сценарий предполагает, что это правильно и выполняет задачу. В противном случае, если существует несколько возможностей, он печатает их (по одному на строку с циклом for, но вы можете просто напечатать список, чтобы он был короче на экране), а затем просит пользователя переписать название страны. Если совпадений нет, просто распечатайте все возможные варианты. Вам может показаться уродливым видеть в командной строке, но вы должны понять и затем улучшить ее.

Если вы хотите проверить и орфографические ошибки при вводе пользователем ... это намного сложнее.

9
задан DisgruntledGoat 15 November 2008 в 23:50
поделиться

7 ответов

Согласно шрифту YUI CSS,

Всегда используйте проценты в качестве единиц, потому что они представляют более последовательно, чем Эмс, и потому что они позволяют инициируемое пользователями изменение размеров (в отличие от пикселей).

Относительные размеры шрифта работают вполне прилично, когда они - часть платформы как YUI. Особенно, потому что они нормализуют, как шрифты работают через браузеры.

Лично, я действительно добавляю абсолютного пкс время от времени, но обычно только для текста, который должен так или иначе совпасть мудрый размером с некоторыми другими элементами дизайна (как меню).

Материал % действительно ломается при присвоении % определенному элементу и затем другого % к содержавшему элементу. Но это - единственный реальный глюк, который я нашел.

4
ответ дан 4 December 2019 в 21:13
поделиться

Как объяснено в этой статье размера шрифта CSS:

Идеально? Самая лучшая единица измерения не НИ ОДИН ВООБЩЕ! Позвольте агенту пользователя определить дисплей согласно предпочтению пользователя - НО! Мы также знаем, что с большинством проектов, это не очень практический подход. Лично? Я предпочитаю гибкость "смешивания и подгонки" .em и .px - Поскольку агенты пользователя становятся более "удобным для пользователя" разработчиком, измеряющим, НЕ будет так же потенциально проблематично ИЛИ спорен как есть теперь.

Не забывайте, хотя относительный размер шрифта может использоваться для других вещей, чем... размер шрифта!

2
ответ дан 4 December 2019 в 21:13
поделиться

Кроме способности изменить размер в IE6 (который является все еще, увы, очень популярным браузером), относительные шрифты дают Вам большую вероятность соответствия потребностям пользователя по умолчанию без них имеющий необходимость изменить размер (или знающий, как к, если мы говорим неопытные пользователи здесь). Пользователь   —  or кто-то от их имени   —  may увеличил размер шрифта как DPI, ОС или удовлетворение требованиям заказчика браузера на серьезных основаниях (например, нарушение зрения) и с родственником, измеряющим Вас, могут использовать ту информацию для их преимущества.

Используйте 'пкс' для текста, который должен соответствовать размерам другим элементам на странице, которые измерены в пикселях (т.е. изображения). Для остальных, ‘%’. Вопрос предполагает, что использование относительных размеров шрифта является в некотором роде трудным; я не думаю, что это.

Обычно Вы установите один размер шрифта в ‘%’ на теле и некоторых на других элементах страницы, которые более или менее важны, чем общий основной текст. У Вас должно редко быть достаточно уровней вложения и вложенных размеров шрифта, которые Вы не можете легко отслеживать их.

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

Единственная реальная трудность с родственником состоит в том, когда Вы измерили блок относительно, но Вы хотите измерить что-то в ней назад к первоначальному размеру. Можно разработать процент, это - инверсия процента родителя, но это, вероятно, будет ужасное число, и можно получить погрешности округления на 1 пкс, если Вы/можете состояние это в полной точности. В этом случайном случае это может быть хорошая идея отступить и посмотреть на селектор, видеть, не можете ли Вы применить калибровку более выборочно, чтобы избежать необходимости отменять его.

По общему признанию, было бы хорошо, если бы у нас была единица, которая была относительна только к размеру пользователя по умолчанию, не родительским размерам, для принятий за решение проблем как это. К сожалению, единственные значения, которые работают как этот, являются самыми малочисленными/меньшими/маленькими/средними/и т.д. ключевые слова, которые являются довольно крупномодульными в дополнение к историческим проблемам непротиворечивости браузера.

2
ответ дан 4 December 2019 в 21:13
поделиться

OS X и Windows обрабатывают, по крайней мере, pt размеры шрифта по-другому, таким образом, это - конечно, полная остановка. С другой стороны, есть ли какое-либо серьезное основание не использовать относительные размеры шрифта? Это не действительно, как будто это было взвешенными дебатами с хорошими аргументами с обеих сторон. Скорее на одной стороне несколько преимуществ (который не мог бы быть очевидным все время). Но с другой стороны существуют только очевидные преимущества, которые, после малейшего зондирования, оказываются бесполезными 1

На самом деле я могу только думать об одном аргументе в пользу абсолютных размеров шрифта, а именно, что он помогает реализовать CSS для законченного дизайна путем копирования размеров шрифта, используемых в программном обеспечении дизайна. В действительности последовательный дизайн будет только использовать горстку различных размеров шрифта, которые являются простыми отношениями друг друга (скажите, 80%), и может таким образом тривиально быть выражен с точки зрения em или %.


1) Вы сказали:

или ли Вы хотите смочь изменить размер шрифта где-нибудь, не влияя на вложенные элементы

Что точно Вы подразумеваете под этим? Смысл CSS - то, что Вы (обычно) изменяете атрибуты элемента относительно его родителей. Почему это должно когда-либо быть проблемой?

Целые дебаты немного напоминают о, “не используют дебаты” таблиц расположения. Аргументы могли бы казаться догматичными nonprofessionals2, но нет просто никакой причины не следовать за ними так или иначе. Это не должно говорить, что неправильно попросить аргументы! Но существует столько бессмысленных нарушений этого правила.


2) Для записи я не профессионал веб-дизайна. Возьмите мои технические мнения здесь только с мелкой частицей соли. Но аргумент действительно независим от используемой технологии.

1
ответ дан 4 December 2019 в 21:13
поделиться

думайте о своих родителях или бабушке и дедушке, смотрящей на Вашу веб-страницу, с и без их бифокальных очков (или trifocals). Если они не могут считать его, потому что Вы сделали все шрифты 8 пкс, они, вероятно, пойдут где-то в другом месте. Если они нажмут 'text size>> largest', и ничего не происходит, то они, вероятно, пойдут где-то в другом месте.

учитывая, что - по крайней мере, в США - много веб-пользователей является пожилыми людьми со временем, деньгами и провальным зрением, использование их для шрифтов для общедоступных сайтов, казалось бы, имело бы большую выгоду ;-)

1
ответ дан 4 December 2019 в 21:13
поделиться

Единственная большая допустимая причина состоит в том, что много людей все еще использует IE6. Просто это. Вероятно, могла быть хорошая вещь, в конце 2008, не уделить больше внимания в IE6. Но является трудным проигнорировать IE6. Я работаю сетью designer/devolper для крупной компании в Италии, и многие наши служащие или клиенты, в их рабочих компьютерах, просматривают Интернет с IE6 прямо сейчас.

Почему? Они не имеют прав администратора и ничего не могут установить в их машинах, и система admistrators всегда слишком занята для обновления компьютеров каждого офиса. Может быть это, люди обновят до IE7 (что-то как Firefox - мечта), когда их жесткие диски должны будут быть изменены.

Возможно, что этот вид вещей происходит только в Италии. Но я не держал бы пари на этом.

0
ответ дан 4 December 2019 в 21:13
поделиться

Используя относительные единицы для размера шрифта, высота строки, и вершина/нижнее поле и дополнение также сохранят типографский масштаб в целости, поскольку пользователи увеличиваются/уменьшают размер текста. Типография и люди дизайна будут ценить его =)

0
ответ дан 4 December 2019 в 21:13
поделиться