2009-05-23 10 views
24

Sto provando a creare un nuovo css per modellare la mia vista dei dettagli. Ma non sono riuscito a raggiungere il secondo td nelle righe del campo delle visualizzazioni dei dettagli. hai qualche idea per accedere a 2nd td?Come selezionare il secondo td in detailsview datarow?

Ma si prega di immaginare il codice belov generato da detailsview.

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

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

risposta

49

La prima domanda è: avete bisogno di supportare IE6? Se la risposta è sì, non puoi farlo. Se non è la soluzione più semplice è probabilmente:

td + td { ... } 

Ancora più moderno (e meno supportato) è:

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

Ciò presuppone che non siete disposti o no in grado di mettere una classe o altro identificativo sul secondo td quindi puoi farlo molto più facilmente.

+1

td + td seleziona 2 °, 3 °, 4 ° e così via. – holden321

4

Mi raccomando di non selezionare un campo che sembra essere il secondo di fila. Un approccio migliore sarebbe quello di assegnare le classi CSS significativi per i campi e selezionando quelli:

<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

Impossibile aggiungere il nome classe al secondo td. – uzay95

Problemi correlati