2011-12-01 14 views
12

Thuộc tính hiển thị của bảng html không hoạt động.Tại sao hiển thị = "false" không hoạt động đối với bảng html thuần túy?

Tại sao họ có thuộc tính đó nếu tài sản bị lỗi? Tôi đã phải sử dụng style="visibility:hidden" để ẩn bảng.

Vui lòng giải thích lý do. Tôi rất tò mò

Đây là mã tôi đang sử dụng. Mục đích là để ẩn bảng nói chung nhưng không ẩn bảng hoặc các điều khiển bên trong bảng đó

<table visible="false"> 
    <tr> 
    <td > 
     <label>Pick the color for action needed and paste it on textbox</label> 
    </td> 
    <td> 
     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
    </td> 
    <td> 
     <asp:Button ID="Button1" runat="server" Text="Apply color" /> 
    </td> 
    </tr> 
</table> 
+0

Đăng tất cả mã có liên quan của bạn. Tôi có thể có được phong cách nội tuyến này làm việc với một bảng. –

+0

@CCRicers Tôi tò mò muốn xem mã hoạt động của bạn – Leon

+0

@Leon http://jsfiddle.net/SgKXY/1/ –

Trả lời

0

"Họ" là ai? Tôi không nghĩ có thuộc tính visible trong html.

+0

+1: Một chút thô giải thích, nhưng phải. Không có thuộc tính như vậy. Và gần như nhiều người khác ở đây thực sự thích ứng với câu hỏi của OP. –

+0

@Fatal, well, nhưng tôi đã không thực sự xúc phạm bất cứ ai, tôi hy vọng :) –

+0

Ít nhất không phải tôi. :) –

1

visibility: hidden là cú pháp thích hợp, nhưng một cách khác để 'ẩn' bảng là với display: none hoặc tự động với JQuery:

$('#myTable').hide() 
+1

'display: hidden' không tồn tại, ẩn không phải là giá trị hợp lệ – Leon

+0

blah, cảm ơn bạn ... đã sửa –

+0

Ẩn hiển thị của Leon không phải là thuộc tính hợp lệ, nó sẽ không hiển thị hoặc ẩn hiển thị. –

11

lẽ Bạn đang tìm kiếm style="display:none;" mà hoàn toàn sẽ ẩn yếu tố của bạn , trong khi khả năng hiển thị ẩn nó nhưng giữ cho màn hình nơi nó sẽ mất ...

CẬP NHẬT: visible không phải là tài sản hợp lệ trong HTML, đó là lý do tại sao nó không hoạt động ... Xem đề xuất ở trên để ẩn chính xác phần tử html

+1

Tôi không chắc chắn nếu đó là những gì OP hỏi về. –

+1

trong trường hợp đó chỉ có 2 câu trả lời trên toàn bộ trang này đã đúng nó – Leon

+0

Tôi nghĩ đó chỉ là một (của tôi, trước khi bạn cập nhật :)). Tôi nghĩ rằng những người khác đã sai vì OP nói anh ta phải sử dụng 'khả năng hiển thị: ẩn' thay vì" khiếm khuyết "có thể nhìn thấy, nhưng anh ta không phàn nàn về hành vi của nó. –

22

Thay vào đó, hãy sử dụng display: none. Bên cạnh đó, đây có lẽ là những gì bạn cần, bởi vì điều này cũng cắt ngắn trang bằng cách loại bỏ không gian bảng chiếm, trong khi visibility: hidden để lại khoảng trắng bên trái của bảng.

1

Đối với bài đăng tương tự cách đây một thời gian dài, có vẻ như có vấn đề với khả năng ẩn hiển thị bảng.

Bạn có hai tùy chọn, một là sử dụng thuộc tính display:none.

Hoặc hai bọc bảng trong div và làm cho div bị ẩn.

<div id="wrapper" style="visibility:hidden"> 
    <table> 
     <tr> 
      <td> 
      Content 
      </td> 
     </tr> 
    </table> 
</div> 
1

Đối với các thực hành tốt nhất - sử dụng style="display:"

nó sẽ làm việc mọi nơi ..

0

Lý do mà có thể nhìn thấy = "false" không hoạt động được vì HTML được định nghĩa là một tiêu chuẩn của một nhóm tập đoàn. Tiêu chuẩn cho phần tử Bảng không có thuộc tính hiển thị được xác định.

Bạn có thể xem tất cả các thuộc tính hợp lệ cho bảng bằng cách truy cập standards web page cho bảng.

Trang đó có thể hơi khó đọc, do đó, here là liên kết đến một trang khác giúp dễ đọc hơn.

1

Nếu bạn muốn sử dụng, hãy sử dụng runat="server" cho bảng đó. Sau đó sử dụng tablename.visible=False trong mã phía máy chủ.

+1

Mặc dù câu hỏi không tuyên bố nó, thuộc tính 'visible' là [cú pháp phía máy chủ cụ thể .NET] (https://msdn.microsoft. com/en-us/library/bb165313 (v = vs.90) .aspx) để ngăn chặn nút được hiển thị trong DOM. Vì vậy, đây là một câu trả lời hợp lệ. – kaskelotti