0

私はこの問題を数週間調査してきました。添付の画像に注意してください。 IE7とIE7のみが、php アプリケーション内でテキストエリア フィールドを完全に/正しくレンダリングしません。これは、添付の図に示すように、一部のドロップダウン フィールドでも発生します。何らかの理由で右側の境界線が表示されず、IE7 を使用していてアップグレードできない、またはアップグレードしない可能性のあるクライアントは、この問題が続くとアプリを使用できなくなります。

サーフィン中に他のいくつかのレンダリングの問題を発見しました。ズームの使用についての言及がありましたが、それは効果がありませんでした.別のパディングの追加について言及しましたが、それでも効果はありません. この特定の問題/バグに実際に対処するものは何も見つかりませんでした。

これに関する洞察を提供できる CSS の専門家はいますか。どんな助けでも大歓迎です。

発行イメージここに画像の説明を入力

これは自動生成 Web フォームです。

textarea フィールドを作成する php コードは次のとおりです。

case FIELD_TEXT_AREA:
    $fieldHtml = inputOrText($mode, "textarea",
                             $field->getValue(), 
                             array("id"=>$field->getId(),
                             "class"=>"valuetext",
                             "name"=>$field->getId(),
                             "rows"=>"3","cols"=>"60",
                             $jsFunctionCalls),
                             array("class"=>"valuetext"));

結果のソース コードは次のとおりです。

               <td valign='top'></td>
           </tr>
      </table>
   </td>
</tr>
<tr id="field-4446">
  <td width='30%' valign='top' align='left' class='labeltext'>Text Area :</td>
  <td width='70%' align='left'>
     <table border='0' style='table-layout:fixed'>
         <tr>
             <td>
               <textarea id="4446" 
                         class="valuetext" 
                         name="4446" rows="3" 
                         cols="60" 0="" > 
               </textarea>
             </td>
4

1 に答える 1

0

考えられる理由は、入力ボックスとテキストエリアを含むセルに固定幅が設定されているため、フィールドに必要な幅よりも少し小さいためです。そしておそらく細胞はoverflow: hidden. 次に、フィールドの右側が切り捨てられます。幅の不一致は、ボックス モデルなどの影響を受けるため、ブラウザーに依存する可能性があります。

CSS で実験的に設定textarea, input { overflow: visible !important }した場合は、それらがどれだけオーバーフローするかを確認する必要があります。この時点では、全体的なレイアウトはおそらく変更できないか、変更すべきではないため、フィールドの幅設定を減らすのがおそらく最善です。詳細は、幅がどのように設定されているかによって異なります。幅を 100% に設定すると、修正されるどころか、このような問題が発生する可能性があることに注意してください。幅は、セルの幅より数ピクセル小さくする必要があります。

于 2012-07-17T14:14:09.857 に答える