Closed Bug 229886 Opened 21 years ago Closed 21 years ago

CSS 2.1 dynamic pseudo-classes are not supported for <select> boxes

Categories

(Core :: CSS Parsing and Computation, defect)

x86
Linux
defect
Not set
normal

Tracking

()

VERIFIED DUPLICATE of bug 163503

People

(Reporter: suomi, Assigned: dbaron)

Details

User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031007 Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.5) Gecko/20031007 CSS 2.1 dynamic pseudo-classes :hover, :active are not supported correctly on select-boxes. the select-box, when single clicked on the down-arrow, unfolds shortly, but instantly claps back. only if you double-click into the text area (as opposed to the down-arrow) the select-box unfolds so that you can do a choice. this stems from the CSS settings, because, if in the CSS sheet, you uncomment the specifications for "select", then everything works fine (i.e. as documented) Reproducible: Always Steps to Reproduce: 1. load the attached index.xhtml 2. take care, that it uses the attached formate.css 3. on the displayed page click the down arrow of a select box. 4. the select box unfolds quickly, but then disappears again. 5. double-click into the text field of a select-box. 6. the select box unfolds and stays unfolded as documented 7. to cross-check: uncomment the select specs in the css file (i.e put a /* in front and */ at the back of them) 8. redo the above tests and everything works fine. Actual Results: a select-box with CSS 2.1 dynamic pseudo-class specs for :hover and :focus does not unfold as documented (i.e. when single-clicked on the down-arrow) Expected Results: unfold the select-box and let it unfolded when single clicked on the down arrow of the select-box the index.xhtml: <?xml version="1.0" encoding="unicode"?> <?xml-stylesheet type="text/css" href="formate.css"?> <!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" lang="en" xml:lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <meta http-equiv="Content-Script-Type" content="text/Javascript" /> <link rel="stylesheet" href="formate.css" type="text/css" /> <title>address Advanced Search Parameters</title> <script type="text/javascript"> //<![CDATA[ function ReadCookie(cookieName) { var theCookie=""+document.cookie; var ind=theCookie.indexOf(cookieName); if (ind==-1 || cookieName=="") return ""; var ind1=theCookie.indexOf(';',ind); if (ind1==-1) ind1=theCookie.length; return unescape(theCookie.substring(ind+cookieName.length+1,ind1)); } function checkEmpty() { document.auth.maxitaxi.value = "search" document.auth.submit() } function create_mailolisto() { document.auth.maxitaxi.value = "mailolisto" document.auth.submit() } function check_LDAP() { document.auth.maxitaxi.value = "checkLDAP" document.auth.submit() } function newEntry() { document.auth.maxitaxi.value = "newEntry" document.auth.submit() } function clearEntryFields() { for (var i =0; i < document.auth.elements.length; i++) { if (document.auth.elements[i].type == "text") document.auth.elements[i].value = "" } } function clearCompFields() { for (var i =0; i < document.auth.elements.length; i++) { if (document.auth.elements[i].type == "select-one") document.auth.elements[i].selectedIndex = 0 } for (var i = 0; i < document.auth.limit10.length; i++) { if (document.auth.limit10[i].value == "limit100") { document.auth.limit10[i].checked = 1 break } } } function suomoHelp() { var w = window.open("/help/help_searchadvanced.html", "searchWindow") w.focus() } function setK() { var bgc = ReadCookie("bgcolor") if (bgc != "") document.bgColor = bgc } //]]> </script> </head> <body onload="setK()"> <form name="auth" action="searchosearch.php" method="post" target="addressResultWindow"> <table id="titcol" summary="page-title"> <tr> <th colspan="2" rowspan="1"> <h3>Advanced Search Criteria</h3></th> </tr> </table> <a name="top"></a> <table summary="top-control-buttons"> <tr> <td class="n"><input type="button" value="close" onClick="window.close()" /> <input type="button" value="toButtom" onClick="window.location='#down'" /></td> <td class="nr"><input type="button" value="help" onClick="suomoHelp()" /></td> </tr><tr> <td class="n"><input type="reset" value="reset" /> <input type="button" value="clearEntries" onClick="clearEntryFields()" /> <input type="button" value="resetComparisons" onClick="clearCompFields()" /></td> <td class="nr"><input type="submit" value="search" onClick="checkEmpty()" /></td> <input type="hidden" name="__pagemadeby" value="cgi/search_advanced.php" /> <input type="hidden" name="maxitaxi" /> </tr> </table> <table summary="page-content"> <tr> <th>date_last_action<br />(date)<br /><input type="checkbox" name="attr[date_last_action]" /></th> <th>date_next_action<br />(date)<br /><input type="checkbox" name="attr[date_next_action]" /></th> <th>name<br />(blob)<br /><input type="checkbox" name="attr[name]" checked="1" /></th> <th>givenname<br />(blob)<br /><input type="checkbox" name="attr[givenname]" checked="1" /></th> </tr> <tr> <td class="c"><select size ="1" name="opt[date_last_action]"> <option>EXACTLY AT</option> <option>BEFORE</option> <option>AFTER</option> <option>BETWEEN DATE</option> <option>IS ZERO</option> <option>IS NOTZERO</option> <option>IS NULL</option> </select></td> <td class="c"><select size ="1" name="opt[date_next_action]"> <option>EXACTLY AT</option> <option>BEFORE</option> <option>AFTER</option> <option>BETWEEN DATE</option> <option>IS ZERO</option> <option>IS NOTZERO</option> <option>IS NULL</option> </select></td> <td class="c"><select size ="1" name="opt[name]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> <td class="c"><select size ="1" name="opt[givenname]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> </tr> <tr> <td class="c"><input type="text" name="crit[date_last_action]" value="" /></td> <td class="c"><input type="text" name="crit[date_next_action]" value="" /></td> <td class="c"><input type="text" name="crit[name]" value="" /></td> <td class="c"><input type="text" name="crit[givenname]" value="" /></td> </tr> <tr> <th>phone<br />(blob)<br /><input type="checkbox" name="attr[phone]" checked="1" /></th> <th>mail<br />(blob)<br /><input type="checkbox" name="attr[mail]" /></th> <th>action<br />(blob)<br /><input type="checkbox" name="attr[action]" checked="1" /></th> <th>comment<br />(blob)<br /><input type="checkbox" name="attr[comment]" checked="1" /></th> </tr> <tr> <td class="c"><select size ="1" name="opt[phone]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> <td class="c"><select size ="1" name="opt[mail]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> <td class="c"><select size ="1" name="opt[action]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> <td class="c"><select size ="1" name="opt[comment]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> </tr> <tr> <td class="c"><input type="text" name="crit[phone]" value="" /></td> <td class="c"><input type="text" name="crit[mail]" value="" /></td> <td class="c"><input type="text" name="crit[action]" value="" /></td> <td class="c"><input type="text" name="crit[comment]" value="" /></td> </tr> <tr> <th>address<br />(blob)<br /><input type="checkbox" name="attr[address]" checked="1" /></th> <th>businesscategory<br />(blob)<br /><input type="checkbox" name="attr[businesscategory]" checked="1" /></th> <th>url<br />(blob)<br /><input type="checkbox" name="attr[url]" /></th> <th>addon<br />(blob)<br /><input type="checkbox" name="attr[addon]" /></th> </tr> <tr> <td class="c"><select size ="1" name="opt[address]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> <td class="c"><select size ="1" name="opt[businesscategory]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> <td class="c"><select size ="1" name="opt[url]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> <td class="c"><select size ="1" name="opt[addon]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> </tr> <tr> <td class="c"><input type="text" name="crit[address]" value="" /></td> <td class="c"><input type="text" name="crit[businesscategory]" value="" /></td> <td class="c"><input type="text" name="crit[url]" value="" /></td> <td class="c"><input type="text" name="crit[addon]" value="" /></td> </tr> <tr> <th>title<br />(blob)<br /><input type="checkbox" name="attr[title]" /></th> <th>history<br />(blob)<br /><input type="checkbox" name="attr[history]" /></th> <th>remarks<br />(blob)<br /><input type="checkbox" name="attr[remarks]" /></th> <th>counter<br />(int)<br /></th> </tr> <tr> <td class="c"><select size ="1" name="opt[title]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> <td class="c"><select size ="1" name="opt[history]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> <td class="c"><select size ="1" name="opt[remarks]"> <option>IS LIKE</option> <option>IS EXACTLY</option> <option>IS NULL</option> <option>IS NOTNULL</option> <option>IS EMPTY</option> <option>IS NOTEMPTY</option> <option>DOES NOT CONTAIN</option> <option>IS UNIQUE</option> <option>GROUP BY</option> </select></td> <td class="c"><select size ="1" name="opt[counter]"> <option>EQUAL TO</option> <option>GT THAN</option> <option>LT THAN</option> <option>LE THAN</option> <option>GE THAN</option> <option>BETWEEN</option> </select></td> </tr> <tr> <td class="c"><input type="text" name="crit[title]" value="" /></td> <td class="c"><input type="text" name="crit[history]" value="" /></td> <td class="c"><input type="text" name="crit[remarks]" value="" /></td> <td class="c"><input type="text" name="crit[counter]" value="" /></td> </tr> </table> <br /> <table summary="bottom-control-buttons"> <tr><td class="n">Today:</td><td class="n">2004-01-02</td><td class="n">&nbsp;</td><td class="n"><input type="radio" name="limit10" value="limit10" />Limit 10</td> <td class="n">&nbsp;</td><td class="n">Order By<select name="orderx" size="1"> <option>counter</option> <option>action</option> <option>addon</option> <option>address</option> <option>businesscategory</option> <option>comment</option> <option>date_last_action</option> <option>date_next_action</option> <option>givenname</option> <option>history</option> <option>mail</option> <option>name</option> <option>phone</option> <option>remarks</option> <option>title</option> <option>url</option> </select> </td></tr> <tr><td class="n">Tomorrow:</td><td class="n">2004-01-03</td> <td class="n">&nbsp;</td><td class="n"><input type="radio" name="limit10" value="limit100" checked="1" />Limit 100</td></tr> <tr><td class="n">Yesterday:</td><td class="n">2004-01-01</td> <td class="n">&nbsp;</td><td class="n"><input type="radio" name="limit10" value="nolimit" />No Limit</td></tr> </table> <br /> <table summary="buttom-control-buttons"> <tr> <td class="n"><input type="reset" value="reset" /> <input type="button" value="clearEntries" onClick="clearEntryFields()" /> <input type="button" value="resetComparisons" onClick="clearCompFields()" /></td> <td class="nr"><input type="button" value="search" onClick="checkEmpty()" /></td> </tr> </table> <input type="button" value="close" onClick="window.close()" /> <input type="button" value="toTop" onClick="window.location='#top'" /> </form> <a name="down"></a> </body> </html> the formate.css: @charset "ISO-8859-1"; /* body background color default: #00eedd */ body { color: black; background: #00eedd ; font-family:Arial, Helvetica, sans-serif; } h1{ font-size:12pt; font-weight:bold; color:#000000;} h2 { font-size:11pt; font-weight:bold;} h2 { color: #000000} a:link { color:#0000FF;text-decoration:none } a:visited { color:#FF0000;text-decoration:none } a:active { color:#0000FF} input:link { color:black; } input:visited { color:blue;text-decoration:none } input:hover { color:red;text-decoration:none } input:active { color:green } textarea:link { color:black; } textarea:visited { color:blue;text-decoration:none } textarea:hover { color:red; text-decoration:none } textarea:active { color:green } select:hover { color:red;text-decoration:none } select:active { color:green } p { font-size:10pt; color:#000000; } ul { font-size:10pt; color:#000000; } li { font-size:10pt; color:#000000; } b { font-size:10pt; font-weight:bold; color:#000000; } i { font-size:10pt; color:#000000; } /* color for invalid mail addresses */ #mycol { color: red } /* tables */ /* title table default color #D3D6D6 */ #titcol { background: #D3D6D6 ; width: 100% ; border-collapse: collapse ; border: 2px ridge white ; } /* general tables */ table { border-collapse: collapse ; width: 100% ; } /* piccolo tables */ table.p { border-collapse: collapse ; width: 50% ; } /* general table cells */ td { border: 2px ridge white ; } td.v { border: 2px ridge white ; vertical-align: top; } td.w155 { border: 2px ridge white ; width: 155px ; } td.n { border: none ; } td.nr { border: none ; text-align: right; } td.c { border: 2px ridge white; text-align: center; } td.nt { border-top: none ; text-align: center; } td.nb { border-buttom: none ; text-align: center; } td.ntb { border-top border-buttom: none ; text-align: center; } th { border: 2px ridge white ; }
Could you attach a _simple_ test case?
Whiteboard: DUPEME
WFM. (WinXP Gecko/20040102)
Oh, and please attach the simple testcase as an attachment ... don't post it as a comment. Thanks! =:-)
*** This bug has been marked as a duplicate of 163503 ***
Status: UNCONFIRMED → RESOLVED
Closed: 21 years ago
Resolution: --- → DUPLICATE
Status: RESOLVED → VERIFIED
Whiteboard: DUPEME
You need to log in before you can comment on or make changes to this bug.