1

入力フィールドとその横の送信ボタンを除いて、正常に機能しているサイトがあります。iPad では正しく表示されません。入力ボックスの高さが送信ボタンより少し高くなっていて、見た目がおかしいです。

私が個人的に思うのは、iPad はサファリ モバイルであり、異なるビューポート (1024px) などを持っていますが、Chrome と同じ Webkit の外観をレンダリングします。では、入力ボックスが iPad で異なって表示されるのはなぜですか?


デスクトップの Google Chrome では次のように表示されます。

入力ボックスのデスクトップ版

iPad では次のように表示されます。

iPad の同じ入力ボックス

HTML 部分は単純に次のようになります。

<div id="search-form">
    <input id="Search" class="defaultText defaultTextActive" title="search shzamm!" type="text" spellcheck="false">
    <input onclick="javascript:someFunction();" type="button" value="Go" class="search_btn">
</div>

そして、同じCSSは次のとおりです。

#search-form {
    overflow: auto;
    box-shadow: -1px 1px 3px rgba(0, 0, 0, 0.1);
    margin-bottom: 26px;
}

input#Search {
    -webkit-appearance: none;
    border-radius: 0;
    -webkit-border-radius: 0;
}

.defaultText {
    width: 88%;
    padding-left: 4px;
    height: 29px;
    float: left;
    background-color: #f7f7f7;
    border-right: 0px solid #666;
    border-bottom: 1px solid #666;
    border-color: #999;
    margin-right: -33px;
}

.defaultTextActive {
    color: #999;
    font-style: italic;
    font-size: 15px;
    font-weight: normal;
}

.search_btn {
    font-size: 13px;
    font-weight: bold;
    height: 34px;
    cursor: pointer;
    float: right;
    margin: 0;
    width: 33px;
    background: url("../images/search.jpg") no-repeat;
    text-indent: -99999px;
    border: 1px solid #999;
    border-top: 2px solid #000;
    margin-top: 0px;
    margin-right: 1px;
}

ご覧のとおり、入力の境界効果も iPad で適切にレンダリングされていません。誰でもそれについて何か手がかりがありますか?

4

3 に答える 3

5

この CSS のスニペットは、テキスト ボックスからデフォルトの WebKit スタイルを削除します。

input[type="text"] {
    -webkit-appearance : none;
    border-radius      : 0;
}

iOS 7 でも動作します。

于 2013-12-03T11:02:01.967 に答える