Как включить сглаживание закругленных углов в браузере Android?

Я установил закругленные углы в CSS, как это:

input { -webkit-border-radius: 1em; }

В настольном браузере (Chrome, FF) углы закруглены и довольно гладкие (сглаживание). Однако в браузере Android (даже 2.3) углы закруглены, но не гладкие, они выглядят довольно плохо - неровно...

Если есть какой-то хакер CSS или другое решение, пожалуйста, помогите.

2 ответа

Решение

Мой опыт (во всех браузерах) заключается в том, что углы сделаны с border-radius выглядят лучше, если они имеют четное количество пикселей по размеру.

Так border-radius: 10px; выглядит лучше чем border-radius:9px;

Мой опыт в основном касается настольных браузеров, но я вижу, как этот эффект может быть похож на мобильные телефоны.

Интересно, если размер вашего em Устройство отличается по размеру между настольным и мобильным?

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

Есть еще одно решение (обходной путь), чтобы улучшить границы и сделать их более гладкими:

-webkit-box-shadow: 0 0 1px #000;

Добавляет тень шириной 1px (размытый) с координатами 0, y, сглаживая сглаживание на элементе, округленном в прямоугольник.

Чтобы предотвратить нацеливание этого правила на все браузеры -webkit (например, настольное сафари, которое хорошо отслеживает границы), вы можете указать целевой диапазон устройств, которые вам нужны, с помощью медиа-запросов.

Более широкий ответ на: Android WebView псевдоним границы

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