Вопрос: Поле ввода в браузере Safari: текст границы + верхний регистр


Как гласит название, вывод следующего кода не отображается, как следует браузер Safari :

1) Граница ввода-поиска не отображается

2) text-transform: верхний регистр не работает.

Остальные браузеры показывают точный результат. См. Изображение, приведенное ниже.

скрипка

HTML:

<div class="searchLob">
    <input type="search" class="searchInput" placeholder="Search the website"></input>
    <button onclick="Submit();" class="searchInputBtn">Search</button>
</div>

CSS:

.searchLob{
    position: relative;
    display: inline-block;
    }

.searchInput{
    position: relative;
    border: 2px solid #d2d4d8;
    height: 44px;
    padding: 0 10px;
    background-color: #fff;
    width: 200px;
    margin: 2px 0 0 2px;
    float: left;
    text-transform: uppercase;
    }

.searchInputBtn{
    position: relative;
    float: left;
    border: medium none;
    color: #fff;
    cursor: pointer;
    font: 14px 'arial';
    height: 44px;
    margin-left: -4px;
    margin-top: 2px;
    text-decoration: none;
    text-transform: uppercase;
    width: 70px;
    background-color: #6692a7;
    }

.searchInputBtn:hover{
    background-color:#547e92;
    }

textarea:focus, input:focus, select:focus{
    border-color: #cccfd0;
    box-shadow: 0 1px 1px rgba(204, 207, 208, 0.075) inset, 0 0 8px rgba(204, 207, 208, 1);
    outline: 0 none;
    }

Я также пробовал следующий метод:

CSS:

@media screen and (-webkit-min-device-pixel-ratio:0) { 
    /* Safari and Chrome */
    .myClass {
     color:red;
    }

    /* Safari only override */
    ::i-block-chrome,.myClass {
     color:blue;
    }
}

чтобы он работал на сафари, но это ничего не делало.

Как мне исправить:

Other Browsers Vs Safari Browser

?

[Я использую версию браузера Safari: 5.1.7 (Build: 7534.57.2)]


6


источник


Ответы:


Если вы удалите весь свой CSS и проверите элемент в Safari, вы заметите, что в CSS добавлено много CSS. user agent stylesheet - это таблица стилей по умолчанию для браузеров и будет отличаться от браузера к браузеру.

Например, это некоторые из стилей по умолчанию, которые добавляются во вход:

input[type="search"] {
    -webkit-appearance: searchfield;
    box-sizing: border-box;
}
user agent stylesheet
input, input[type="password"], input[type="search"], isindex {
    -webkit-appearance: textfield;
    padding: 1px;
    background-color: white;
    border: 2px inset;
    -webkit-rtl-ordering: logical;
    -webkit-user-select: text;
    cursor: auto;
}
user agent stylesheet
:focus {
    outline: 5px auto -webkit-focus-ring-color;
}

Как упоминалось в блоге - Сброс ввода HTML5 в Webkit  

  • кредит на Приянк Шарма

Способ сброса стилей Safari по умолчанию состоит в том, чтобы добавить следующий CSS:

/* Reset HTML5 Search Input in Webkit */
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  -webkit-appearance:none;
}
input[type=search] {
  -webkit-appearance:textfield;
  -webkit-box-sizing:content-box;
}

Итак, если вы сейчас проверите скрипту - http://jsfiddle.net/Hg2A6/8/  вы заметите, что он получает правильный стиль


9



вы можете использовать Placeholder Attribute Selector

::input-placeholder

input::-webkit-input-placeholder {
    color: rgba(0,5,143,.5);
    text-transform: uppercase;
}
input::-moz-placeholder {
    color: rgba(0,5,143,.5);
    text-transform: uppercase;
}
input:-moz-placeholder {   /* Older versions of Firefox */
    color: rgba(0,5,143,.5);
    text-transform: uppercase;
}
input:-ms-input-placeholder { 
    color: rgba(0,5,143,.5);
    text-transform: uppercase;
}

<input type="text" placeholder="I'm placeholder text!">

Заметка:  Не все свойства CSS поддерживаются в   :: правило ввода-заполнителя. На самом деле, только горстка, самая полезная   которые являются:

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

color
font-size
font-style
font-weight
letter-spacing
line-height
padding
text-align
text-decoration

Проверьте эту ссылку Demo, которую я нашел во время поиска. http://codepen.io/Treehouse/pen/fIesK

Кредит идет Гиль Эрнандес


0