2009-02-23 34 views
9

tôi đang tìm cách để tạo ra một sản lượng tương tự như sau:ngang Ordered List (và IE)

1. One  2. Two  3. Three  4. Four 

từ Mã HTML sau

<ol> 
    <li>One</li> 
    <li>Two</li> 
    <li>Three</li> 
    <li>Four</li> 
</ol> 

Dường như Internet Explorer không muốn hiển thị số của (danh sách các mục) khi bạn thả phao để làm cho chúng nằm ngang.

Có ai gặp phải điều này và tìm thấy giải pháp tôi có thể sử dụng không?

Trả lời

7

Mã này hoạt động trên mọi trình duyệt mà tôi đã thử nghiệm. Nếu bạn chưa tìm thấy câu trả lời, đề xuất về câu trả lời phổ biến nhất là hợp lệ. Chỉ cần điều chỉnh chiều rộng của bạn nếu bạn muốn nó quấn.

<ol style="list-style-type:decimal; width: 600px;"> 
    <li style="float: left; width: 200px; padding: 2px 0px;">Test</li> 
    <li style="float: left; width: 200px; padding: 2px 0px;">Test</li> 
    <li style="float: left; width: 200px; padding: 2px 0px;">Test</li> 
</ol> 

ol.horizontal{ 
    list-style-type: decimal; 
    width: 600px; 
} 

ol.horizontal li{ 
    float: left; 
    width: 200px; 
    padding: 2px 0px; 
} 

<ol class="horizontal"> 
    <li>Test</li> 
    <li>Test</li> 
    <li>Test</li> 
</ol> 
+0

Không hoạt động trong IE7 cho tôi. Bạn đang sử dụng DOCTYPE nào? –

+0

Hoạt động. Theo gợi ý, bạn có thể muốn thêm dòng này sau khi kết thúc danh sách để ngăn không cho quảng cáo bị lộn xộn với nội dung khác:

Lee

+0

Nó không hoạt động trên chrome 26 – matheusvmbruno

0

css:

li { display:inline; } 
+1

Giải pháp này giảm số danh sách đã đặt hàng từ các thành phần trong IE, Firefox, Opera và Safari. Từ câu hỏi của anh ta, tôi cho rằng anh ta muốn chúng được bảo tồn. –

9

Bạn có thể sử dụng CSS này?

li {display: inline} 

EDIT: Điều này không duy trì việc đánh số mục, và tôi không biết về bất kỳ phương pháp nào. Để thay thế, tôi đoán tất cả những gì bạn có thể làm là chèn các số bằng tay, cho đến khi các trình duyệt được hỗ trợ tốt hơn cho các bộ đếm CSS.

+0

Giải pháp này giảm số danh sách đã đặt hàng từ các thành phần trong IE, Firefox, Opera và Safari. Từ câu hỏi của anh ta, tôi cho rằng anh ta muốn chúng được bảo tồn. –

+0

Điểm tốt ... Tôi sẽ xem nếu tôi có thể tìm thấy nội dung nào đó và chỉnh sửa nó. –

+0

Tôi đã cố gắng li {display: inline; list-style-type: thập phân; } nhưng nó không có hiệu lực trong các trình duyệt được liệt kê. –

1

bạn không thể đặt chiều rộng trên các phần tử nội tuyến. vì vậy tôi thường kết thúc nổi họ thay vì

li 
{ 
    float: left; 
    width:30px; 
} 
+1

Giải pháp này giảm số danh sách đã đặt hàng từ các thành phần trong IE6, 7 & 8RC1, Google Chrome và Safari dành cho Windows 3.2.2. Nó bảo tồn các số danh sách theo thứ tự trong Firefox 2, 3 và 3.1b2. Từ câu hỏi của anh ta, tôi cho rằng anh ta muốn chúng được bảo tồn. –

4

Tôi đã thử mọi tài sản display trên this page và không ai trong số họ giữ gìn những con số danh sách đặt hàng khi hiển thị danh sách theo chiều ngang trong IE (cũng không được bảo quản trong Firefox, Opera hoặc Safari cho Windows - và bằng cách mở rộng có thể là Google Chrome, mặc dù tôi thừa nhận tôi đã không kiểm tra mọi thuộc tính display ở đó).

Các giải pháp duy nhất (một phần - trong Firefox chỉ) hoạt động là Al W's answer.

Tôi nghĩ rằng nếu bạn muốn có một danh sách được đánh số theo chiều ngang, bạn sẽ phải tạo ra nó trên máy chủ hoặc thao tác danh sách trên máy khách sử dụng JavaScript để lắp lại những con số.

+0

Phiên bản Firefox nào ẩn số cho bạn? Tôi thấy chúng tốt trong FF3.0. Cho dù đó là một lỗi hay không là gây tranh cãi. –

+0

@Bobby Những gì tôi đã nói là các số danh sách được sắp xếp không được bảo toàn khi bạn sử dụng 'li {display: inline; } '. Chúng được lưu giữ trong Firefox khi bạn sử dụng 'li {float: left; chiều rộng: 30px; } '(theo câu trả lời của Al W). –

0

Tôi đã tìm thấy this page about IE hasLayout hữu ích. Nó bao gồm thảo luận về định dạng danh sách đó (liên kết trỏ đến phần danh sách của trang)

4

Được rồi, bạn cần thêm thuộc tính kiểu float, chiều rộng và kiểu danh sách vào css. Trông như thế này:

 
li{ 
    float:left; 
    width:50px; 
    list-style-type:decimal; 
} 

Gushiken