输入边框显示在Chrome中,但不显示在IE中

时间:2012-01-06 16:43:20

标签: html css internet-explorer google-chrome

我正在创建一个Web表单,我发现了一个奇怪的小错误或者其他东西:虽然我添加到文本输入字段的边框和背景样式在Chrome中有效,但我在IE8或9中什么也得不到。 in,没有边框或背景。要查看它,你甚至不知道输入字段是否存在,除非你点击标签或设法点击正确的位置,因为焦点属性工作得很好。

我已经看到了几个有相反问题的问题 - 边框适用于IE但不适用于Chrome - 但不适用于此问题。我试过边框:默认情况下,我尝试过非常黑暗的背景,我尝试在我的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 个答案:

答案 0 :(得分:1)

看起来你正在使用inset,这取决于border-color属性。所以把它们分成边框颜色:颜色;和边境式:插图;如果它只是一个实心,虚线,点缀等属性,而不是单独标记它。值得一试。

答案 1 :(得分:1)

border:1px thin #99ccff;引起 - 由于某种原因(我不知道为什么),IE将其解释为border-style:none

如果删除该行,您的边框会再次神奇地显示出来......

编辑:我知道为什么,它只是无效的css - 你在这一行中指定了2个宽度,并且IE试图将thin解释为边框式......

答案 2 :(得分:0)

非常确定li input[checkbox], input[text]不是您的意图。 请尝试使用li input[type="checkbox"], li input[type="text"]

另外,请务必在类型选择器周围使用双引号。

答案 3 :(得分:0)

在CSS的border部分中,只需将border-width更改为input[type='text'], input[type='tel'], input[type='email']即可。检查out