2011-08-24 38 views
5

Tôi đang cố gắng đặt thanh cuộn ngang trên thẻ chọn không hoạt động.Thanh cuộn ngang không hoạt động trên thẻ được chọn

Dưới đây là các mã:

<select style="height: 250px; width: 300px; overflow: auto;" 
    id="dnn_ctr459_ManageRelatedProducts_lstFrom" multiple="multiple" 
    name="dnn$ctr459$ManageRelatedProducts$lstFrom" class="selectList" size="4"> 
    <option value="9">33 Uithoeke</option> 
    <option value="10">Aantekeninge by Koos Prinsloo</option> 
    <option value="11">Aantekeninge by Koos Prinsloo (enhanced e-book)</option> 
    <option value="12">Access to Social Security</option> 
    <option value="13">Angling for Interpretation</option> 
    </select> 

.selectList 
{ 
    height: 250px; 
    overflow: auto; 
    width: 300px; 
} 

enter image description here

Matt của kết quả giải pháp trong việc này: Kết quả enter image description here

cuối cùng trong FF enter image description here

kết quả cuối cùng trong IE, nhờ Matt! enter image description here

+0

tràn-x: cuộn; thay vì chỉ tràn: cuộn; cũng có thể overflow-y: hidden; –

+2

Bạn có thể hiển thị mã HTML cho kết quả CUỐI CÙNG không? ta – Rippo

Trả lời

3

Không chắc chắn nếu bạn có thể làm điều đó, nhưng bạn luôn có thể lừa nó vào như thế bằng cách đặt một div xung quanh lựa chọn, và thiết lập chiều rộng và cuộn ngang trên đó. Taken from here.

+0

Điều này làm việc cảm ơn Matt nhưng nó không lực lượng thanh cuộn đôi trong IE7. Tôi nghĩ vì Scroll-x và scroll-y không hoạt động trong IE? – SixfootJames

+0

sẽ hoạt động, bạn có đang triển khai chính xác không? [hãy xem trang kiểm tra tràn css này] (http://www.brunildo.org/test/Overflowxy2.html). –

+0

Tuyệt vời, cảm ơn Matt. Có vẻ như trong IE, bạn phải tự tắt thanh cuộn dọc đã hoạt động! – SixfootJames

0

Bạn không thể buộc thanh cuộn trên các phần tử được chọn.

+0

Cảm ơn Chris. Vấn đề tôi gặp phải là giỏ hàng chúng tôi đang sử dụng sử dụng phần tử chọn này với tên sản phẩm rất dài trong đó và bằng cách nào đó tôi cần phần tử chọn này để cuộn. Đề nghị của Matt K dưới đây sẽ có tác dụng nhưng sau đó điều đó có nghĩa là sẽ có hai thanh cuộn (dọc) và sẽ làm cho việc điều hướng trở nên rất khó khăn. Có cách nào để thay đổi từ ngữ trên các yếu tố được chọn không? – SixfootJames

+0

không cần phải có hai thanh cuộn nếu bạn sử dụng thuộc tính tràn-x ... –

+0

Cảm ơn Matt ... dường như đã hoạt động. Tôi sẽ kiểm tra điều này ngay bây giờ trong IE 7 và hy vọng điều này cũng hoạt động. – SixfootJames

-1

Có, bạn có thể. Hãy dùng thử với JQuery:

<div id='test' style="overflow-x:scroll; width:120px; overflow: -moz-scrollbars-horizontal;"> 
<select id='mySelect' name="mySelect" size="5"> 
    <option value="1">one two three four five six</option> 
    <option value="2">seven eight</option> 
    <option value="3">nine ten</option> 
    <option value="1">one two three four five six</option> 
    <option value="2">seven eight</option> 
    <option value="3">nine ten</option> 
    <option value="1">one two three four five six</option> 
    <option value="2">seven eight</option> 
    <option value="3">nine ten</option> 
    <option value="1">one two three four five six</option> 
    <option value="2">seven eight</option> 
    <option value="3">nine ten</option> 
</select> 
<div id="divv" style='font-size: 1px'>&nbsp</div> 
</div> 

<script> 
    $('#divv').css('width', $('#mySelect').outerWidth()); 
    $('#mySelect').css('width', $('#test').outerWidth()); 
    $("#test").scroll(function() { 
     $('#mySelect').css('width', $(this).outerWidth() + $(this).scrollLeft()); 
    }); 
</script> 
Các vấn đề liên quan