Tôi có một bảng dữ liệu và mỗi ô là một liên kết. Tôi muốn cho phép người dùng nhấp vào bất kỳ đâu trong ô bảng và yêu cầu họ theo liên kết. Đôi khi các ô của bảng có nhiều hơn một dòng nhưng không phải lúc nào cũng vậy. Tôi sử dụng td a {display: block} để lấy liên kết để bao phủ phần lớn ô. Khi có một ô trong một hàng là hai dòng và các ô khác chỉ là một dòng thì một lớp lót không lấp đầy toàn bộ không gian dọc của hàng trong bảng. Dưới đây là HTML mẫu và bạn có thể nhìn thấy nó trong hành động ở đây http://www.jsfiddle.net/RXHuE/:Tạo liên kết trong ô bảng điền toàn bộ chiều cao hàng
<head>
<style type="text/css">
td {width: 200px}
td a {display: block; height:100%; width:100%;}
td a:hover {background-color: yellow;}
</style>
<title></title>
</head>
<body>
<table>
<tbody>
<tr>
<td>
<a href="http://www.google.com/">Cell 1<br>
second line</a>
</td>
<td>
<a href="http://www.google.com/">Cell 2</a>
</td>
<td>
<a href="http://www.google.com/">Cell 3</a>
</td>
<td>
<a href="http://www.google.com/">Cell 4</a>
</td>
</tr>
</tbody>
</table>
</body>
+1 Đó là lần đầu tiên tôi nghe nói về "display: table". –
Vâng, tôi đã thử sử dụng "display: inline-block", mà thực sự làm việc trong các trình duyệt Webkit nhưng không phải là firefox hoặc IE. Sau đó, tôi đọc rằng "hiển thị: bảng" là tương tự vì vậy tôi nghĩ rằng tôi sẽ cung cấp cho nó một thử và kết thúc đăng câu hỏi với điều đó. Tôi đã chỉnh sửa câu hỏi để sử dụng "display: block" vì đó là ý tưởng đầu tiên của tôi. –
Tôi gần như hỏi cùng một câu hỏi: http://stackoverflow.com/questions/9127274/how-to-strech-a-link-over-the-whole-cell –