Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1002
  • Last Modified:

Problem with CSS div layers with z-index over Select Option fields on I.E.6.0

Experts,

I have a layer that is supposed to be placed over Option/Select fields. It works perfectly on FireFox, but it doesn't work on I.E. The select fiels are over the layer... The other Input fields don't have any problems.

How can I fix this problem??

Thanks in advance.
0
sunflowersh
Asked:
sunflowersh
1 Solution
 
GoofyDawgCommented:
Do you have any example code or a link to where we can see it in action? That would help a lot.

GoofyDawg
0
 
sunflowershAuthor Commented:
GoofyDawg,

here is the html code.

<div id="fullShield"></div>
<div id="overlayContainer">
      <h3 class="overlayTitle">Title</h3>
      <p class="closeWindow"><a href="#" >Close Window</a></p>
      <h4 class="overlayTxt">Text</h4>
      <div id="upsellThumb" class="X">
            <div id="upsellBenefits">
                  <p class="benefitsTxt">Text</p>
                  <p class="benefitsTxt">Text</p>
                  <p class="benefitsTxt">Text</p>
 
<form method="post" action="" id="frmUpsell" name="frmUpsell">
                    <input type="submit" value="Add to Order" class="long" />
                  
</form>
  </div><!-- end upsellBenefits -->
  </div><!-- end upsellThumb -->
</div><!-- end fullShield -->


<div id="content" class="full">
            
            <table class="order" cellspacing="0" cellpadding="5">
            <thead>
                  <tr>
                        <td>Product</td>
                        <td>Quantity</td>
                        <td>Price</td>
                  </tr>
            </thead>
            <tbody>
                  <tr>
                        <td>Product A</td>
                        <td>1</td>
                        <td>$xx.xx <small>per mo</small></td>
                  </tr>
                  <div id="addedUpsell">
                  <tr class="even">
                        <td>Product B</td>
                        <td>1</td>
                        <td>$xx.xx</td>
                  </tr>
                  </div>
                  
                  <tr class="even">
                  <form name="crossSell" action="" method="post">
                        <td><input type="checkbox" name="crossSell" /> Add <a href="#" target="_blank" title="Score Power">Score Power </a>to Order<br />Product Description comes here</td>
                        <td>$xx.xx</td>
                        <td><input type="button" value="Add to Order" class="applyCode" /></td>
                  </form>
                  </tr>                  
            </tbody>
            <tfoot>
                  <tr>
                        <td colspan="2">Total:</td>
                        <td>$xx.xx</td>
                  </tr>
            </tfoot>
            </table>
            
            
            
            <h3>Payment Information</h3>
            <p>Please choose a method of payment from the options below.<br />
            All fields must be filled in for your order to be processed through our payment system.</p>
                  
              <form name="FrmOrder" action="" method="post">
              <table class="payment" summary="Credit card information that is stored in the database.">
              <thead>
                    <tr>
                        <td width="25%">Pay with existing card</td>
                        <td width="21%" class="light">Credit Card Number</td>
                        <td width="28%" class="light">Credit Card Holder Name</td>
                        <td width="26%" class="light">Expiration Date</td>
                  </tr>
            </thead>
            <tbody>
                  <tr>
                        <td><input type="radio" checked="checked" name="cardType" /> Master Card</td>
                        <td>xxxx - xxxx - xxxx - 1234</td>
                        <td>First Name MI Last Name</td>
                        <td><select name="expireMonth">
                                                <option value="01" selected="selected">01</option>
                                                <option value="02">02</option>
                                                <option value="03">03</option>
                                                <option value="04">04</option>
                                                <option value="05">05</option>
                                                <option value="06">06</option>
                                                <option value="07">07</option>
                                                <option value="08">08</option>
                                                <option value="09">09</option>
                                                <option value="10">10</option>
                                                <option value="11">11</option>
                                                <option value="12">12</option>
                                          </select> /      <select name="expireYear">
                                                <option value="2001" selected="selected">01</option>
                                                <option value="2002">02</option>
                                                <option value="2003">03</option>
                                                <option value="2004">04</option>
                                                <option value="2005">05</option>
                                                <option value="2006">06</option>
                                                <option value="2007">07</option>
                                                <option value="2008">08</option>
                                                <option value="2009">09</option>
                                                <option value="2010">10</option>
                                            </select></td>
                  </tr>
            </tbody>
            </table>
            <table class="payment" summary="New credit card information.">
              <thead>
                    <tr>
                        <td width="25%">Pay with new card</td>
                        <td width="21%" class="light">Credit Card Number</td>
                        <td width="28%" class="light">Credit Card Holder Name</td>
                        <td width="26%" class="light">Expiration Date</td>
                  </tr>
            </thead>
            <tbody>
                  <tr>
                        <td><input type="radio" checked="checked" name="cardType" />
                              <select name=payMethod>
                                    <option value=None selected="selected">(select one)</option>
                                    <option value=VISA>Visa</option>
                                    <option value=MC>MasterCard</option>
                                    <option value=AMEX>American Express</option>
                                    <option value=DISC>Discover</option>
                              </select></td>
                        <td><input maxlength="16" size="16" name="CC_NUM" /></td>
                        <td><input maxlength="60" size="30" name="CC_NAME" /></td>
                        <td><select name="expireMonth">
                                                <option value="01" selected="selected">01</option>
                                                <option value="02">02</option>
                                                <option value="03">03</option>
                                                <option value="04">04</option>
                                                <option value="05">05</option>
                                                <option value="06">06</option>
                                                <option value="07">07</option>
                                                <option value="08">08</option>
                                                <option value="09">09</option>
                                                <option value="10">10</option>
                                                <option value="11">11</option>
                                                <option value="12">12</option>
                                          </select> /      <select name="expireYear">
                                                <option value="2001" selected="selected">01</option>
                                                <option value="2002">02</option>
                                                <option value="2003">03</option>
                                                <option value="2004">04</option>
                                                <option value="2005">05</option>
                                                <option value="2006">06</option>
                                                <option value="2007">07</option>
                                                <option value="2008">08</option>
                                                <option value="2009">09</option>
                                                <option value="2010">10</option>
                                            </select></td>
                  </tr>
                  <tr>
                        <td colspan="4"><input type="checkbox" name="savePaymentMethod" /> Save this method of payment for future purchases.</td>
                  </tr>
            </tbody>
            </table>
            
            <h3>Gift Certificate or Promotional Code</h3>
            <p><input type="text" name="promoCode" /> <input type="button" value="Apply Code" class="applyCode" /><br />
            Find out more about <a href="#" target="_blank">gift certificates</a> or <a href="#" target="_blank">promotional codes</a></p>
             
             <input type="submit" value="Continue" class="long" />
              </form>
             
</div><!-- end contentFull -->


---------------------------------------

Here are the CSS codes

#content {
      background: transparent url(../images/bg_orderFlowMiddle.gif) repeat-y 0 0;
      border: solid 1px #cecece;
      border-top-width: 0;
      border-bottom-width: 0;
      border-collapse: collapse;
      float: left;
      margin: 0 0 0 5px;
      padding: 0;
      width: 748px;
}
html>body #content {
      margin: 0 0 0 10px;
}
#content.full {
      background: none;
      border: solid 1px #cecece;
      border-top-width: 0;
      border-bottom-width: 0;
      border-collapse: collapse;
      float: left;
      margin-left: 5px;
      padding: 0;
      width: 748px;
}
p {
      padding: 0 10px 0 10px;
}
html>body p {
      padding: 10px 10px 0 10px;
}

/* Form config */
form {
      margin: 0 0 0 6px;
      padding: 0;
}
form input, form textarea, form select, form select option {
      font-size: 11px;
      padding: 0;
}
form input.long { /* long submit button - used for Continue, Add to Cart, View Member Center */
      background: transparent url(../images/btn_bgLong.gif) no-repeat 0 10px;
      border: 0;
      color: #fff;
      font-size: 16px;
      font-weight: bold;
      height: 56px;
      margin: 0;
      padding: 0 0 0 10px;
      text-align:left;
      width: 258px;
}
form input.applyCode {
      background: transparent url(../images/btn_bgsmlGray.gif) no-repeat 0 0;
      border: 0;
      color: #333333;
      text-align: center;
      width: 87px;
      height: 22px;
      vertical-align: baseline;
}
fieldset {
      border:0;
      padding: 0;
      margin: 0;
}
/* end Form config */

/* Table configure  */
table.order { /* table for the order information */
      border: solid 1px #dadada;
      margin: 25px 15px 15px 10px;
      padding: 0;
      width: 500px;
}
table.order thead tr {
      background: transparent url(../images/bg_tableHdr.gif) repeat-x 0 0;
      font-size: 12px;
      font-weight: bold;
      height: 26px;      
}
table.order tfoot tr{
      background: transparent url(../images/bg_tableFtr.gif) repeat-x 0 0;
      font-size: 12px;
      font-weight: bold;
      height: 24px;      
}
table.order tbody tr.even {
      background-color: #f9f9f9;
} /* end table for the order information */


table.payment { /* table for the credit card info */
      width: 100%;
      border: none;
      margin: 0 0 5px 0;
      padding: 8px;      
}
table.payment thead tr td {
      font-weight: bold;
}
table.payment thead tr td.light {
      color: #808080;
}
/* end table settings */

/* overlay settings */
#fullShield {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 200;
      background-color: #000;
      height: 1500px;
      width: 1200px;
      opacity: .25;
      -moz-opacity: .25;
      -khtml-opacity: .25;
      filter: alpha(opacity=25);
}
html>body #fullShield {
      width: 100%;
}
#overlayContainer {
      position: absolute;
      background-color: #fff;
      background: #ffffff url(../images/bg_upsellHdr.gif) repeat-x 0 0;
      top: 130px;
      left: 150px;
      z-index: 500;
      border: 2px solid #999;
      width: 80%;
      
}
html>body #overlayContainer {
      width: 70%;
      
}
#overlayContainer h3.overlayTitle {
      color: #9d0a0e;
      font-weight: normal;
      font-size: 26px;
      height: 52px;
      margin: 0;
      padding: 15px 0 0 15px;
}
#overlayContainer h4.overlayTxt {
      font-weight: normal;
      font-size: 16px;
      margin: 0;
      padding: 0 15px;
}
#overlayContainer #upsellThumb.X {
      background: transparent url(../images/upsell_X.gif) no-repeat bottom left;
      float: left;
      height: 220px;
}
#overlayContainer #upsellThumb #upsellBenefits {
      float: left;
      padding: 15px 15px 0 250px;
}
#overlayContainer #upsellThumb #upsellBenefits p.benefitsTxt {
      font-size: 14px;
      margin: 0;
      padding: 10px 15px 0 0;
}
#overlayContainer p.closeWindow { /* close icon and text link at the right corner */
      float: right;
      height: 31px;
      margin: -55px 15px 0 0;
      padding: 0;
}
#overlayContainer p.closeWindow a {
      background: transparent url(../images/ico_windowClose.gif) no-repeat top right;
      display: block;
      padding: 10px 35px 0 0;
      width: 75px;
      height: 31px;
}
/* end overlay settings */

/* Common classes */
.copy_aster {
      color: #990000;
      font-size: 12px;
}
0
 
jagadeesh_motamarriCommented:
It doesn't either work in FF....what is your problem with respect to the code....Can u please elaborate.

Thank YOu,
Jags.
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
sunflowershAuthor Commented:
That is odd... It works on FF(1.5) and Netscape 7....

The problem is on IE, the payment select fields (drop down) are laid over the shield layer. I need to place the shield all over the content including the drop down selections.

jaqadeesh, what do you see when you look at the page?

The page should look that gray transparent layer over the payment form content. Over the transparent gray layer, white background with gray border. Then Title in red text and some text are in the very top white layer.

Thanks for looking into this.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<style type="text/css">
/* outer cage that has white background */
#container {
      background-color: #ffffff;
      font-family: Arial, Helvetica, sans-serif;
      margin: 0 auto;
      padding: 0;
      width: 772px;
}
/* end outer cage that has white background */
#content {
     background: transparent url(../images/bg_orderFlowMiddle.gif) repeat-y 0 0;
     border: solid 1px #cecece;
     border-top-width: 0;
     border-bottom-width: 0;
     border-collapse: collapse;
     float: left;
     margin: 0 0 0 5px;
     padding: 0;
     width: 748px;
}
html>body #content {
     margin: 0 0 0 10px;
}
#content.full {
     background: none;
     border: solid 1px #cecece;
     border-top-width: 0;
     border-bottom-width: 0;
     border-collapse: collapse;
     float: left;
     margin-left: 5px;
     padding: 0;
     width: 748px;
}
p {
     padding: 0 10px 0 10px;
}
html>body p {
     padding: 10px 10px 0 10px;
}

/* Form config */
form {
     margin: 0 0 0 6px;
     padding: 0;
}
form input, form textarea, form select, form select option {
     font-size: 11px;
     padding: 0;
}
form input.long { /* long submit button - used for Continue, Add to Cart, View Member Center */
     background: transparent url(../images/btn_bgLong.gif) no-repeat 0 10px;
     border: 0;
     color: #fff;
     font-size: 16px;
     font-weight: bold;
     height: 56px;
     margin: 0;
     padding: 0 0 0 10px;
     text-align:left;
     width: 258px;
}
form input.applyCode {
     background: transparent url(../images/btn_bgsmlGray.gif) no-repeat 0 0;
     border: 0;
     color: #333333;
     text-align: center;
     width: 87px;
     height: 22px;
     vertical-align: baseline;
}
fieldset {
     border:0;
     padding: 0;
     margin: 0;
}
/* end Form config */

/* Table configure  */
table.order { /* table for the order information */
     border: solid 1px #dadada;
     margin: 25px 15px 15px 10px;
     padding: 0;
     width: 500px;
}
table.order thead tr {
     background: transparent url(../images/bg_tableHdr.gif) repeat-x 0 0;
     font-size: 12px;
     font-weight: bold;
     height: 26px;    
}
table.order tfoot tr{
     background: transparent url(../images/bg_tableFtr.gif) repeat-x 0 0;
     font-size: 12px;
     font-weight: bold;
     height: 24px;    
}
table.order tbody tr.even {
     background-color: #f9f9f9;
} /* end table for the order information */


table.payment { /* table for the credit card info */
     width: 100%;
     border: none;
     margin: 0 0 5px 0;
     padding: 8px;    
}
table.payment thead tr td {
     font-weight: bold;
}
table.payment thead tr td.light {
     color: #808080;
}
/* end table settings */

/* overlay settings */
#fullShield {
     position: absolute;
     top: 0;
     left: 0;
     z-index: 200;
     background-color: #000;
     height: 1500px;
     width: 1200px;
     opacity: .25;
     -moz-opacity: .25;
     -khtml-opacity: .25;
     filter: alpha(opacity=25);
}
html>body #fullShield {
     width: 100%;
}
#overlayContainer {
     position: absolute;
     background-color: #fff;
     background: #ffffff url(../images/bg_upsellHdr.gif) repeat-x 0 0;
     top: 180px;
     left: 150px;
     z-index: 500;
     border: 2px solid #999;
     width: 80%;
     
}
html>body #overlayContainer {
     width: 70%;
     
}
#overlayContainer h3.overlayTitle {
     color: #9d0a0e;
     font-weight: normal;
     font-size: 26px;
     height: 52px;
     margin: 0;
     padding: 15px 0 0 15px;
}
#overlayContainer h4.overlayTxt {
     font-weight: normal;
     font-size: 16px;
     margin: 0;
     padding: 0 15px;
}
#overlayContainer #upsellThumb.X {
     background: transparent url(../images/upsell_X.gif) no-repeat bottom left;
     float: left;
     height: 220px;
}
#overlayContainer #upsellThumb #upsellBenefits {
     float: left;
     padding: 15px 15px 0 250px;
}
#overlayContainer #upsellThumb #upsellBenefits p.benefitsTxt {
     font-size: 14px;
     margin: 0;
     padding: 10px 15px 0 0;
}
#overlayContainer p.closeWindow { /* close icon and text link at the right corner */
     float: right;
     height: 31px;
     margin: -55px 15px 0 0;
     padding: 0;
}
#overlayContainer p.closeWindow a {
     background: transparent url(../images/ico_windowClose.gif) no-repeat top right;
     display: block;
     padding: 10px 35px 0 0;
     width: 75px;
     height: 31px;
}
/* end overlay settings */

/* Common classes */
.copy_aster {
     color: #990000;
     font-size: 12px;
}
</style>
<body>


<div id="fullShield"></div>
<div id="overlayContainer">
     <h3 class="overlayTitle">Title</h3>
     <p class="closeWindow"><a href="#" >Close Window</a></p>
     <h4 class="overlayTxt">Text</h4>
     <div id="upsellThumb" class="X">
          <div id="upsellBenefits">
               <p class="benefitsTxt">Text</p>
               <p class="benefitsTxt">Text</p>
               <p class="benefitsTxt">Text</p>
 
<form method="post" action="" id="frmUpsell" name="frmUpsell">
                 <input type="submit" value="Add to Order" class="long" />
               
</form>
  </div><!-- end upsellBenefits -->
  </div><!-- end upsellThumb -->
</div><!-- end fullShield -->

<div id="container">
<div id="content" class="full">
         
          <table class="order" cellspacing="0" cellpadding="5">
          <thead>
               <tr>
                    <td>Product</td>
                    <td>Quantity</td>
                    <td>Price</td>
               </tr>
          </thead>
          <tbody>
               <tr>
                    <td>Product A</td>
                    <td>1</td>
                    <td>$xx.xx <small>per mo</small></td>
               </tr>
               <div id="addedUpsell">
               <tr class="even">
                    <td>Product B</td>
                    <td>1</td>
                    <td>$xx.xx</td>
               </tr>
               </div>
               
               <tr class="even">
               <form name="crossSell" action="" method="post">
                    <td><input type="checkbox" name="crossSell" /> Add <a href="#" target="_blank" title="ProductA">Product A </a>to Order<br />Product Description comes here</td>
                    <td>$xx.xx</td>
                    <td><input type="button" value="Add to Order" class="applyCode" /></td>
               </form>
               </tr>              
          </tbody>
          <tfoot>
               <tr>
                    <td colspan="2">Total:</td>
                    <td>$xx.xx</td>
               </tr>
          </tfoot>
          </table>
         
         
         
          <h3>Payment Information</h3>
          <p>Please choose a method of payment from the options below.<br />
          All fields must be filled in for your order to be processed through our payment system.</p>
               
            <form name="FrmOrder" action="" method="post">
            <table class="payment" summary="Credit card information that is stored in the database.">
            <thead>
                 <tr>
                    <td width="25%">Pay with existing card</td>
                    <td width="21%" class="light">Credit Card Number</td>
                    <td width="28%" class="light">Credit Card Holder Name</td>
                    <td width="26%" class="light">Expiration Date</td>
               </tr>
          </thead>
          <tbody>
               <tr>
                    <td><input type="radio" checked="checked" name="cardType" /> Master Card</td>
                    <td>xxxx - xxxx - xxxx - 1234</td>
                    <td>First Name MI Last Name</td>
                    <td><select name="expireMonth">
                                        <option value="01" selected="selected">01</option>
                                        <option value="02">02</option>
                                        <option value="03">03</option>
                                        <option value="04">04</option>
                                        <option value="05">05</option>
                                        <option value="06">06</option>
                                        <option value="07">07</option>
                                        <option value="08">08</option>
                                        <option value="09">09</option>
                                        <option value="10">10</option>
                                        <option value="11">11</option>
                                        <option value="12">12</option>
                                   </select> /     <select name="expireYear">
                                        <option value="2001" selected="selected">01</option>
                                        <option value="2002">02</option>
                                        <option value="2003">03</option>
                                        <option value="2004">04</option>
                                        <option value="2005">05</option>
                                        <option value="2006">06</option>
                                        <option value="2007">07</option>
                                        <option value="2008">08</option>
                                        <option value="2009">09</option>
                                        <option value="2010">10</option>
                                     </select></td>
               </tr>
          </tbody>
          </table>
          <table class="payment" summary="New credit card information.">
            <thead>
                 <tr>
                    <td width="25%">Pay with new card</td>
                    <td width="21%" class="light">Credit Card Number</td>
                    <td width="28%" class="light">Credit Card Holder Name</td>
                    <td width="26%" class="light">Expiration Date</td>
               </tr>
          </thead>
          <tbody>
               <tr>
                    <td><input type="radio" checked="checked" name="cardType" />
                         <select name=payMethod>
                              <option value=None selected="selected">(select one)</option>
                              <option value=VISA>Visa</option>
                              <option value=MC>MasterCard</option>
                              <option value=AMEX>American Express</option>
                              <option value=DISC>Discover</option>
                         </select></td>
                    <td><input maxlength="16" size="16" name="CC_NUM" /></td>
                    <td><input maxlength="60" size="30" name="CC_NAME" /></td>
                    <td><select name="expireMonth">
                                        <option value="01" selected="selected">01</option>
                                        <option value="02">02</option>
                                        <option value="03">03</option>
                                        <option value="04">04</option>
                                        <option value="05">05</option>
                                        <option value="06">06</option>
                                        <option value="07">07</option>
                                        <option value="08">08</option>
                                        <option value="09">09</option>
                                        <option value="10">10</option>
                                        <option value="11">11</option>
                                        <option value="12">12</option>
                                   </select> /     <select name="expireYear">
                                        <option value="2001" selected="selected">01</option>
                                        <option value="2002">02</option>
                                        <option value="2003">03</option>
                                        <option value="2004">04</option>
                                        <option value="2005">05</option>
                                        <option value="2006">06</option>
                                        <option value="2007">07</option>
                                        <option value="2008">08</option>
                                        <option value="2009">09</option>
                                        <option value="2010">10</option>
                                     </select></td>
               </tr>
               <tr>
                    <td colspan="4"><input type="checkbox" name="savePaymentMethod" /> Save this method of payment for future purchases.</td>
               </tr>
          </tbody>
          </table>
         
          <h3>Gift Certificate or Promotional Code</h3>
          <p><input type="text" name="promoCode" /> <input type="button" value="Apply Code" class="applyCode" /><br />
          Find out more about <a href="#" target="_blank">gift certificates</a> or <a href="#" target="_blank">promotional codes</a></p>
           
           <input type="submit" value="Continue" class="long" />
            </form>
           
</div><!-- end contentFull -->
</div><!-- end container -->
</body>
</html>
0
 
GrandSchtroumpfCommented:
There is no perfect solution.
In IE, <select> elements are "windowed elements" and always display on top of "windowless elements".
To have your layer display on top of your select elements, you'll need to use a windowed element as your layer, like another <select>, an <iframe>, an <object>.
Another solution is to use javascript to hide the select when your layer is on top of it...
0
 
sunflowershAuthor Commented:
Grand,

Thank you for your prompt comment. iframe is the one that I was thinking too. Thought there might be another way to do. Thanks again!!!
0
 
GrandSchtroumpfCommented:
cheers :)
0

Featured Post

[Webinar] Database Backup and Recovery

Does your company store data on premises, off site, in the cloud, or a combination of these? If you answered “yes”, you need a data backup recovery plan that fits each and every platform. Watch now as as Percona teaches us how to build agile data backup recovery plan.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now