Questo è venuto da un'altra domanda che è stata posta here ma immagino che sia qualcosa che probabilmente ha un approccio "Best Practice".Stili CSS e sovrascrittura su elementi nidificati
Durante la progettazione di un sito Web, il progettista molto probabilmente unirà un insieme di stili generici per tutti gli elementi all'interno di un sito web. (Caratteri standard per testo in Div/Span/H1/H2s)
Nel caso di tabelle, possono definire anche i bordi e gli allineamenti predefiniti in tutto il sito ... ad es.
Table
{
border: dashed 1px #333333;
padding: 2px;
}
Tuttavia, se si dispone di una tabella all'interno di una tabella (da esempio RSolberg s', un AJAX Calendario all'interno di un DataGrid), allora sia i genitori & tabelle nidificate saranno entrambi erediterà questi stili. (Supponiamo che per questo si chiamino Cascading)
La mia domanda è qual è la pratica migliore per applicare gli stili alla maggior parte degli elementi senza che anche i sottoelementi li ereditino.
Dovresti solo fornire un override che annulla qualsiasi stile applicato.
ad es.
Table
{
border: dashed 1px #333333;
padding: 2px;
}
Table Table
{
border: solid 0px #000000;
padding: 0px;
}
So che entrambe queste soluzioni funzioneranno. Mi sto chiedendo da un punto di vista dei progettisti Html/Css quale sia la migliore pratica. Presumo che non ci sia una bandiera CSS magica che dice "Applica N livelli profondi e ferma" –