2013-02-18 33 views
12

Khi hiển thị menu thả xuống chọn như bên dưới, iPhone sẽ làm trống nó. Làm thế nào tôi có thể sửa lỗi này?<select> với thuộc tính kích thước: iPhone hiển thị trống

<select size="3"> 
    <option value="volvo">Volvo</option> 
    <option value="saab">Saab</option> 
    <option value="opel">Opel</option> 
    <option value="audi">Audi</option> 
</select> 

Ví dụ trên từ http://www.w3schools.com/tags/att_select_size.asp. mẫu của họ là http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_select_size

Trong Firefox (và tất cả các trình duyệt khác), nó ám như:

Firefox example rendered select dropdown

Tuy nhiên, trên một chiếc iPhone, nó trả lại trống. Điều này là rất xấu cho khả năng sử dụng như người truy cập không biết những gì trong hộp (trong ứng dụng của chúng tôi, đó là để lựa chọn địa chỉ của họ từ một số khả năng).

iPhone example rendering

Tôi đã tạo một JSFiddle: http://jsfiddle.net/bqMEv/3/ Hình dựng iPhone là như sau; lưu ý rằng không có gì cho thấy là khi cả hai:

  • kích thước lớn hơn 1
  • và chiều cao được quy định trong CSS
  • và không có tùy chọn được chọn

Rendering from JSFiddle

Loại bỏ CSS chiều cao cho thấy iPhone bỏ qua thuộc tính kích thước.

Removing CSS height

+0

Thay vì sử dụng 'size = "3"', hãy thử sử dụng một quy tắc CSS 'chọn {width: 10px; } ' –

+1

Bạn không có bất kỳ tùy chọn nào như"

+0

Sử dụng mã ví dụ ở trên, không có loại xe được chọn trước. Để thực hiện việc này, bạn cần phải thêm "- Chọn loại xe -" hoặc tương tự như HTML. Trong ứng dụng của tôi, bạn đang chọn địa chỉ nhà của bạn từ danh sách địa chỉ; Tôi không biết nên chọn cái nào. – GlennG

Trả lời

5

Hình như không có cách nào tiêu chuẩn để làm điều đó, dựa trên nội dung của các chủ đề khác trên stack overflow:

Nhưng tác giả của chủ đề thứ hai đã viết một plugin mô phỏng hành vi đó: https://github.com/redhotsly/safarimobile-multiline-select

+0

http://forums.macrumors.com/showthread.php?t=324849 – GlennG

+0

Dường như iOS không hỗ trợ HTML thuộc tính bình thường