2012-08-23 391 views
0

我有一個客戶端想要使用的模板設計的CSS代碼。我遇到的一個問題是,一旦選擇了一個文本選項(這些選項的寬度很大),就會寫下下拉箭頭。與下拉菜單重疊的文本

See image

我一直在使用的z-index,並把溢出試過:隱藏在適當情況下。這裏是CSS代碼:爲下拉

/* search drop-down values */ 
select option {} 
option.level-0{padding:0 3px;} 
option.level-1,option.level-2,option.level-3, 
option.level-4,option.level-5,option.level-6, 
option.level-7{} 
.selectBox-dropdown{ height: 34px; min-width:190px; max-width: 320px;      position:relative; border:solid 1px #BBB; line-height:1; text-decoration:none; color:#666; outline:none; vertical-align:middle; background:#FFF; -webkit-border-radius:6px; -moz-border-radius:6px; border-radius:6px; display:inline-block; cursor:default; margin-top: 1px\9; height: 33px\9;} 
.content_right .selectBox-dropdown {width:303px;} 
.content_right a.selectBox-dropdown:hover {text-decoration:none;} 
.selectBox-dropdown:focus, 
.selectBox-dropdown:focus .selectBox-arrow{border-color:#BBB} 
.selectBox-dropdown.selectBox-menuShowing{-moz-border-radius-bottomleft:0; -moz- border-radius-bottomright:0; -webkit-border-bottom-left-radius:0; -webkit-border-bottom-right-radius:0; border-bottom-left-radius:0; border-bottom-right-radius:0} 
.selectBox-dropdown .selectBox-label{width:100%; padding:0 .7em; line-height:2.4em; display:inline-block; white-space:nowrap; overflow:hidden; font-size:14px} 
.selectBox-dropdown .selectBox-arrow{position:absolute; top:0; right:0; width:23px; height:100%; background:url(images/sb-arrow.png) 50% center no-repeat; border-left:solid 1px #BBB; } 
.selectBox-dropdown-menu{position:absolute; z-index:99999; max-height:200px; border:solid 1px #BBB; background:#FFF; -moz-box-shadow:0 2px 6px rgba(0,0,0,.2); -webkit-box-shadow:0 2px 6px rgba(0,0,0,.2); box-shadow:0 2px 6px rgba(0,0,0,.2); overflow:auto} 
.selectBox-inline{width:250px; outline:none; border:solid 1px #BBB; background:#FFF; display:inline-block; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; overflow:hidden;} 
.selectBox-inline:focus{border-color:#666} 
.selectBox-options, 
.selectBox-options li, 
.selectBox-options li a{list-style:none; display:block; cursor:default; padding:0; margin:0} 
.selectBox-options li a{color:#666; padding:1px .7em; white-space:nowrap; overflow:hidden; background:6px center no-repeat; text-decoration:none; font:14px/1.5em Arial,Helvetica,sans-serif;} 
.selectBox-options li.selectBox-hover a{background-color:#EEE} 
.selectBox-options li.selectBox-disabled a{color:#888; background-color:transparent} 
.selectBox-options .selectBox-optgroup{color:#666; background:#EEE; font-weight:bold; line-height:1.5; padding:0 .3em; white-space:nowrap;} 
.selectBox.selectBox-disabled{color:#888 !important} 
.selectBox-dropdown.selectBox-disabled .selectBox-arrow{opacity:.5; filter:alpha(opacity=50); border-color:#666;} 
.selectBox-inline.selectBox-disabled{color:#888 !important} 
.selectBox-inline.selectBox-disabled .selectBox-options a{background-color:transparent !important} 

代碼:

<div class="state-dropdown"><?php wp_state_dropdown() ?></div> 

<span id="campus_dropdown"><?php if (empty($_GET['cp_state'])){ wp_campus_dropdown();} ?></span> 
<?php if (!empty($_GET['cp_state'])){?> 
<script type="text/javascript" >loadXMLDoc('<?php echo $_GET['cp_state'];?>','<?php echo $_GET['cp_your_college'];?>')</script> 
<?php }?> 

任何建議或幫助,將不勝感激。我知道這有點太CSS了,但是它又來自一個模板,我已經把頭髮拉出了幾個星期!

非常感謝你提前!

+0

在jsfiddle中給出了一個使用html的演示。 –

+0

我認爲他不會那樣做。我想這是某種WordPress主題。他/她應該給我們一個實例來分析 - 他的網站。 – biphobe

回答

0

首先沒有示例HTML,我們只能猜測如何使用css。在分析你提供的css後,我刺戳了一下我是如何使用它的,jsFiddle here。基於這個假設,有兩種選擇:

  • 爲包含菜單選項的元素設置正確的填充。這可能會導致下拉範圍擴大,但應該更好,因爲它可以讓用戶看到選項的全部文本。
  • 將下拉箭頭元素('.selectBox-arrow')的背景設​​置爲純色並與包含元素的邊框半徑相匹配。請注意,背景顏色默認爲透明。

如果無論出於何種原因這些選項在您的情況下都不起作用,請記住,Firebug(或其他瀏覽器的開發人員工具)是您的朋友。這些工具可以幫助縮短這類問題的工作量。