Se si prova a dare alle webparts un aspetto un po' più
accattivante rispetto a quello che hanno di default ci si scontra con un piccolo
ma fastidioso bug, riconosciuto da Microsoft come tale. Le webpart,
volenti o nolenti hanno sempre un padding di 5 pixel attorno al contenuto e di 2
pixel attorno al titolo. Tale padding non è impostabile in alcun modo, ma per
stessa ammissione del team di ASP.NET 2.0 è hard-coded all'interno del
framework.
Esistono un paio di workaround suggeriti da Microsoft in ladybug, ma la loro applicazione è del tutto limitata
e difficoltosa. L'unico modo veramente valido che ho trovato - suggerito da un
utente - per superare questo problema è lo sfruttare la natura dei css.
Chiunque usi i css sa che in cascata vengono applicati prima i fogli di style
.css, poi il contenuto di <style> e infine il valore dell'attributo style
di ogni tag con il risultato che quest'ultimo ha la precedenza sugli altri e
risulta insuperabile. Detto questo è evidente che l'attributo
style="padding:5px" che si trova sul <td> che incapsula il contenuto
della webpart è pressochè impossibile da aggirare.
Esiste però una clausola nei fogli di stile che consente di
sovrascrivere questo comportamento di default. Si tratta dello switch
!important che se fatto seguire ad uno stile fa si che esso diventi
preponderante rispetto a quelli di livello superiore.
.webPart
{
padding: 0px !important;
}
Questo breve pezzetto di stile risolverà definitivamente il
problema. Speriamo però che Microsoft ci metta una pezza al più
presto.
powered by IMHO 1.3