2009-05-23 22 views
24

Tôi đang cố gắng tạo một css mới để định hình chi tiết của tôi. Nhưng tôi không thể đạt đến thứ hai td trong detailviews hàng trường. Bạn có bất kỳ ý tưởng để truy cập 2 td?Làm thế nào để chọn thứ hai td trong detailsview datarow?

Nhưng hãy tưởng tượng mã belov được tạo bởi detailsview.

<table> 
<thead> 
... 
</thead> 

<tbody> 
    <tr> 
     <td>Name</td> 
     <td><input type='text' id='txtName' /></td> 
    </tr> 
</tbody> 
</table> 

Trả lời

49

Câu hỏi đầu tiên là: làm bạn cần hỗ trợ IE6? Nếu câu trả lời là có thì bạn không thể làm điều đó. Nếu không phải là giải pháp đơn giản nhất có lẽ là:

td + td { ... } 

Thậm chí hiện đại hơn (và ít được hỗ trợ) là:

td:nth-child(2) { ... } 

định này hàm ý rằng bạn không sẵn sàng hoặc không thể đặt một lớp hoặc số nhận dạng khác vào ngày thứ hai để bạn có thể làm điều đó dễ dàng hơn nhiều.

+1

td + td chọn thứ 2, thứ 3, thứ 4 v.v. – holden321

4

Tôi khuyên bạn không nên chọn trường sẽ xảy ra là trường thứ hai liên tiếp. Cách tiếp cận tốt hơn là chỉ định các lớp học css có ý nghĩa cho các trường và chọn các lớp đó:

<head> 
    <style type="text/css" media="screen"> 
    td.form-value { 
     background-color:red; 
    } 
    </style> 
</head> 
<tr> 
    <td class="form-label"> 
    Label: 
    </td> 
    <td class="form-value"> 
    ... 
    </td> 
</tr> 
+0

Không thể thêm tên lớp vào thứ hai td. – uzay95

Các vấn đề liên quan