|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Mar 2006
Messaggi: 2056
|
[css] dubbio su grammatica
ciao,
ho due domande che dovrebbero essere per voi semplicissime 1) per riferire un tag contenuto all'interno di una classe , non ho capito quando bisogna usare tag.class{} o .class tag {} perchè ho riscontrato che vengono usati i due sopra citati metodi ,per esempio : Codice:
<body class="pippo"> </body> body.pippo Codice:
<div class=pluto>
<a> </a>
</div>
.pluto a{
}
ma perchè nell'ultimo esempio non si fa a.pluto{} ??? 2) differenza tra margin-left e left ? c'è qualcosa nella grammatica del css che mi devo essere perso per strata Ultima modifica di aeroxr1 : 19-04-2013 alle 17:48. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2780
|
Quote:
In sostanza lo spazio significa che ciò che è a destra è discendente di ciò che è sinistra. Vedi qui per una documentazione completa sui selettori: http://www.w3schools.com/cssref/css_selectors.asp Con margin-left specifichi il margine sinistro del box. Vedi qui per il box model: http://www.w3schools.com/css/css_boxmodel.asp left invece ha significato solo quando position non è static. Se position è absolute, left è la posizione del lato sinistro del box rispetto al primo contenitore "antenato" con position absolute o relative (in mancanza di tale contenitore left è relativo all'intero documento). Se position è relative, left è la posizione del lato sinistro del box rispetto a dove si sarebbe posizionato se la sua posizione fosse stata static. Se position è fixed, left è la posizione del lato sinistro del box rispetto alla finestra del browser. Vedi qui per un riferimento di tutte le proprietà css: http://www.w3schools.com/cssref/default.asp |
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Mar 2006
Messaggi: 2056
|
Quote:
ma quando la posizione è absolute e vengono usati entrambe le proprietà : left e margin-left ? magari impostando left 50% e margin-left: -100px (trucchetto usato per centrare un elementro di larghezza 200px) mi sembrano uguali le definizioni di margin e left cioè uno esprime il margine sinistro dal suo elemento contenitore, e l'altro la distanza a sinistra dal suo elemento contenitore.. In pratica non è la stessa cosa ?
Ultima modifica di aeroxr1 : 22-04-2013 alle 11:31. |
|
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Feb 2004
Città: milano
Messaggi: 2148
|
Quote:
Se usi left e margin-left le due proprietà si sommano. Es. Codice:
.contenitore {
position: relative;
}
.box {
position: sbsolute:
left: 100px;
margin-left: 100px;
}
|
|
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Mar 2006
Messaggi: 2056
|
Quote:
solo left lavora con il position ? margin- non si riferisce comunque alla stessa cosa ? |
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Feb 2004
Città: milano
Messaggi: 2148
|
Quote:
Margin-left invece funziona sempre, con qualsiasi box, anche solo con se stesso. In pratica (molto alla buona) left e margin-left hanno si lo stesso effetto, ovvero spostano il box corrente da sinistra di un certo valore, ma la teoria è completamente diversa e l'implementazione pure. Ultima modifica di airon : 22-04-2013 alle 11:41. |
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Mar 2006
Messaggi: 2056
|
Quote:
|
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Mar 2006
Messaggi: 2056
|
si ora ho capito left,bottom,top,right funzionano con il position,
mentre i margini rappresentano il margine tra un elemento e l'elemento a lui adiacente . QUindi se ho due div uno sotto l'altro el secondo metto margin-top : 50px si riferisce alla distanza dal div sopra , e se vi metto sempre al secondo div un top: 5000px questa è la distanza tra il div e il margine superiore dell'elemento che lo contiene . GIusto ? In quel caso sarebbe posizionato alla somma delle distanze o solo alla più grande che contiene anche la più piccola ? cioè 5050 o 5000 ? |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Feb 2004
Città: milano
Messaggi: 2148
|
Quote:
primo caso: il secondo div si posizionerà a 50px dal contenuto del div padre. (Puoi anche fare due div separati per questo caso) il secondo si posizionerà a 50px da quello precedente. secondo caso: il secondo div si posizionerà a 5050. 5000 dato da posizionamento e 50 dal margin-top. Ciaoo |
|
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Mar 2006
Messaggi: 2056
|
Quote:
vi volevo fare un ultima domanda : i div sono elementi di blocco eppure se creo un div con sfondo rosso e una scritta di una riga al suo interno avviene la seguente cosa : position : static ; il colore rosso si estende per tutta la dimensione della pagina position : relative ; il colore rosso si estende per tutta la dimensione della pagina position : absolute; il colore rosso si estende solo per la dimensione della scritta se lo imposto float fa la stessa cosa che se lo posiziono absolute. Ora la domanda è , perchè se lo imposto assoluto o float si comporta quasi come un elemento inline e lo sfondo non si estende in larghezza per tutta la larghezza del contenitore ? |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:08.




















