Граница ввода отображается в Chrome, но не в IE - PullRequest
2 голосов
/ 06 января 2012

Я создаю веб-форму и обнаружил странную небольшую ошибку или что-то еще: хотя границы и фоновый стиль, которые я добавляю в поля ввода текста, работают в Chrome, я не получаю ничего в IE8 или 9. Как. в, нет границ или фона. Чтобы посмотреть на это, вы бы даже не знали, что поля ввода существуют, если вы не нажмете вкладку или не нажмете в нужном месте, так как атрибут focus работает просто отлично.

Я видел несколько вопросов, у которых есть обратная проблема - граница работает в IE, но не в Chrome - но не для этого. Я пробовал border: default, я пробовал действительно темные фоны, я пытался удалить весь класс в моем css, и мои поля ввода все еще невидимы в IE, если они не сфокусированы.

Вот части моего CSS (оставленные без всякого отношения):

input[type='checkbox']
{
    width:1em;
    float:left;
    margin-left:1em;
    margin-right:0.5em;
    border:none;
}

.form
{

    font-size:12px;
    font-family:Georgia;
    width:25em;
    color:#000;
}

.form_large
{

    background:#fff;
    font-family:Georgia;
    font-size:12px;
    width:35em;
    border:2px inset #ccccff
}

.form_medium {  

    font-size:12px;
    font-family:Georgia;
    width:20em;
    color:#000;
    margin-left:0.5em;
    border:2px inset #ccccff;
}

.form_qty {

    font-size:12px;
    font-family:Georgia;
    width:3em;
    color:#000;
    margin-left:0.5em;
    border:2px inset #ccccff;
}

input[type='text'], input[type='tel'], input[type='email']
{

    color:#000033;
    background:#FFF;
    border:1px thin #99ccff;
}

input[type='checkbox']
{

    color:#cFF;
}

li input[checkbox], input[text]
{

    left:-2;
    margin-left:0;
    opacity:0;
    z-index:2;
    cursor:pointer;
    height:1em;
    width:1em;
    top:0;
    border:1px solid #000033;
}

А вот (части) связанного HTML (это довольно длинная форма):

<label for="input_1">Name/Company*</label>
  <input type="text" name='name' id="input_1" placeholder='Full name or Company name' required='required' class='form_medium'  />
</p>
<p>
  <label for="input_2">Address</label>
  <input type="text" name='Address' id="input_2" class='form_medium'  />
</p>
<p>
  <label for='input_3'>City*</label>
  <input type='text' id='input_3' name='City' required='required' class='form_medium'  />
</p>
<p>
  <label for='input_4'>Phone*</label>
  <input type='tel' pattern="\d{10}" name='phone' placeholder='e.g. 0123456789'id='input_4'class='form_medium' required='required'  />
</p>
    <p>
  <label for="input_5">E-mail</label>
  <input type="email" name='email' placeholder='e.g. jack@example.net'id="input_5" class='form_medium'  />
</p>
<p><p3>Please select all that apply:</p3></p>
<ol>
  <li class='main'>
    <input name='questions' type='checkbox' id='checkbox_1'label="label" for='checkbox_1'   />
    Questions:**
    <ol>
      <li class='sub_1'>
        <input name='Questions' type='text' class='form_large' cols="60" rows="5" placeholder='Do you have any questions about your equipment or our services?' id='input_6' />
      </li>
    </ol>
  </li>
</ol>
<ol>
  <li class='main'>
    <input name='Visit' type='checkbox' checked id='checkbox_2'label="label" for='checkbox_2'   />
    Visit (select type, all that apply):
    <ol>
      <li class='sub_1'>
        <input name='Service'  type='checkbox' id="checkbox_3"  label="label" for='checkbox_3' />
        Service
        <ol>
          <li class='sub_2'>
            <input name='Change Filters' type='checkbox'  id='checkbox_4' />
            Change filters
                <ol>
                    <li class='sub_3'>
                        <input name='Salt' type='checkbox'  id='salt_del'  />
            Deliver Salt
            <input type="text" name='del_salt' id='del_salt' class='form_qty'  />
          </li>
          </ol>
          </li>
          <li class='sub_2'>
            <input name='Repair' type='checkbox'  id='checkbox_5'  />
            Repair</li>
          <li class='sub_2'>
            <input name='Move' type='checkbox'  id='checkbox_6'  />
            Move Equipment</li>
          <li class='sub_2'>
            <input name='Hook_Up' type='checkbox'  id='checkbox_7'  />
            Hook up Equipment</li>
          <li class='sub_2'>
            <input name='Disconnect' type='checkbox'  id='checkbox_8'  />
            Disconnect Equipment</li>
        </ol>
      </li>
      <li class='sub_1'>
        <input name='Delivery'  type='checkbox' id="checkbox_9"  label="label" for='checkbox_9'/>
        Delivery (specify quantity)
        <ol>
          <li class='sub_2'>
            <input name='Water' type='checkbox' id='checkbox_10'  />
            Water (5-gal bottled)
            <input type="text" name='del_wat' id='del_wat' class='form_qty'  />
          </li>
          <li class='sub_2'>
            <input name='Salt' type='checkbox'  id='checkbox_11'  />
            <label class='qty' for='del_salt'>Salt</label>
            <input type="text" name='del_salt' id='del_salt' class='form_qty'  />
            <ol>
                    <li class='sub_3'>
                        <input name='Salt' type='checkbox'  id='filt_change'  />
            Change Filters
            </li>
          </ol>
          </li>
          <li class='sub_2'>
            <input name='Filt_deliver' type='checkbox'  id='checkbox_12'  />
            <label class='qty' for='del_filt'>Filters</label>
            <input type="text" name='del_filt' id='del_filt' class='form_qty'  />
          </li>
          <li class='sub_2'>
            <input name='Parts' type='checkbox'  id='checkbox_13'  />
            <label class='qty' for='del_parts'>Parts</label>
            <input type="text" name='del_parts' id='del_parts' class='form_qty'  />
          </li>
          <li class='sub_2'>
            <input name='Other_deliver' type='checkbox'  id='checkbox_14'  />
            Other (please specify)**
            <input type="text" name='del_other' id='del_other' class='form_medium'  />
          </li>
        </ol>
      </li>
      <li class='sub_1'>
        <input name='Other_visit'  type='checkbox' id="checkbox_15"  label="label" for='checkbox_15'/>
        Other Visit (please specify)**
        <input type="text" name='visit_other' id='visit_other' class='form_medium' />
      </li>
    </ol>
  </li>
</ol>
<ol>

Заранее спасибо!

Ответы [ 4 ]

1 голос
/ 06 января 2012

Это вызвано border:1px thin #99ccff; - по какой-то причине (я понятия не имею, почему) IE интерпретирует это как border-style:none.

Если вы удалите линию, ваши магические границы снова появятся ...

РЕДАКТИРОВАТЬ: у меня есть идея, почему, это просто неверный CSS - вы указываете 2 ширины в этой строке, и IE пытается интерпретировать thin как стиль границы ...

1 голос
/ 06 января 2012

Похоже, вы используете вставку, которая зависит от свойства border-color.Так что выделите их как бордюрный цвет: цвет;и стиль границы: вставка;вместо одного тега, как если бы это было сплошное, штриховое, пунктирное и т. д. свойство.Стоит дать выстрел.

0 голосов
/ 06 января 2012

Просто изменение border на border-width в части input[type='text'], input[type='tel'], input[type='email'] вашего CSS работает для IE8. Проверьте это из .

0 голосов
/ 06 января 2012

Уверен, что li input[checkbox], input[text] не то, что вы хотели.Попробуйте li input[type="checkbox"], li input[type="text"] вместо

Кроме того, обязательно используйте двойные кавычки вокруг селекторов типа.

...