regione barra sx non ci sono blocchi ma rimangono le dimensioni in ie

11 contenuti / 0 new
Ultimo contenuto
regione barra sx non ci sono blocchi ma rimangono le dimensioni in ie

ciao, sto postando in continuazione e i titoli nuovi servono solo a cercare di capire e raffinare le mie richieste d'aiuto.
Dalla lettura in internet non riesco a capire come sia possibile nel file ie.css in un sotto tema creato con zen andare a specificargli che la regione è vuota e che non deve considerare i parametri. Parametri che non sono dichiarati nel file ie.css.
Se provo a impostare nel file ie.css i parametri per la colonna di sx e non succede nulla, perché avviene questo? o meglio quali sono i parametri da utilizzare solo con ie per evitare che conteggi i margini e le dimensioni impostate nel file mio.css?

/** content **/
  #content,
  .no-sidebars #content
  {
    float: left;
    width: 1000px;
    margin-left: 0;
    margin-right: -1000px; /* Negative value of #content's width + left margin. */
    padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */
  }
  .sidebar-left #content
  {
    width: 8px;
    margin-left: 200px; /* The width of #sidebar-left. */
    margin-right: -1000px; /* Negative value of #content's width + left margin. */
  }
  .sidebar-right #content
  {
    width: 750px;
    margin-left: 0px;
    margin-right: -750px; /* Negative value of #content's width + left margin. */
  }
  .two-sidebars #content
  {
    width: 540px;
    margin-left: 200px; /* The width of #sidebar-left */
    margin-right: -740px; /* Negative value of #content's width + left margin. */
  }
  #content-inner
  {
    margin: 0;
    padding: 0 4px 0 4px;
  }
/** navbar **/
  #navbar
  {
    float: left;
    width: 100%;
    margin-left: 0;
    margin-right: -100%; /* Negative value of #navbar's width + left margin. */
    padding: 0; /* DO NOT CHANGE. Add padding or margin to #navbar-inner. */
    height: 3.6em; /* The navbar can have any arbritrary height. We picked one
                      that is twice the line-height pluse 1em: 2 x 1.3 + 1 = 3.6
                      Set this to the same value as the margin-top below. */
  }

questo é il codice presente nel file layout-fixed.css
ho letto:
http://www.positioniseverything.net/explorer/floatIndent.html
http://groups.drupal.org/node/52053#comment-141548
e sul libro css guida completa questo problema ma non riesco a impostare i parametri corretti.
devo impostargli il valore zero per la sua dimensione e così potrò avere tutto a sx.
Grazie
Tz

Non è nel CSS che devi guardare, ma nel page.tpl.php.
Per ogni regione, ci dovrebb'essere un 'controllo' se esiste contenuto per quella regione. Se non c'è contenuto (tipo #sidebar-left, #sidebar-right), allora non viene nemmeno scritto il contenitore della regione.
Piccolo esempio da Zen (page.tpl.php):

<?php if ($left): ?>
  <div id="sidebar-left">
    <div id="sidebar-left-inner" class="region region-left"><?php print $left; ?></div>
  </div>
<?php endif; ?>

In questo caso, se $left è vuoto, non viene scritto il div #sidebar-left, e quindi le regole CSS per #sidebar-left non avranno nessun effetto...

HTH

John

Più imparo, più dubito.

ciao John,
dunque nel mio file page.tpl.php c'è la sezione da te indicata:

      <?php if ($left): ?>
        <div id="sidebar-left"><div id="sidebar-left-inner" class="region region-left">
          <?php print $left; ?>
        </div></div> <!-- /#sidebar-left-inner, /#sidebar-left -->
      <?php endif; ?>

ma non capisco perché se esiste mi ritrovo con il "testo" a dx...
http://www.drupalitalia.org/node/9962
qui ti riporto il post precedente con una immagine che esemplifica il mio problema.
Grazie
Tz

Dato che si tratta di Zen, bisogna controllare due cose:

  1. Che sta scrivendo le classe giuste per il numero di colonne, esempio:
    <body class="one-sidebar sidebar-left">
  2. Che il CSS in layout-fixed.css è stato correttamente aggiustato per la largezza delle colonne

Allora il body class può essere uno di (layout-fixed.css):

  1. .no-sidebars
  2. .sidebar-left
  3. .sidebar-right
  4. .two-sidebars

E bisogna fare la matematica, come dai commenti di quelle regole di CSS:

#content,
  .no-sidebars #content
  {
    float: left;
    width: 960px;
    margin-left: 0;
    margin-right: -960px; /* Negative value of #content's width + left margin. */
    padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */
  }
  .sidebar-left #content
  {
    width: 760px;
    margin-left: 200px; /* The width of #sidebar-left. */
    margin-right: -960px; /* Negative value of #content's width + left margin. */
  }
  .sidebar-right #content
  {
    width: 760px;
    margin-left: 0;
    margin-right: -760px; /* Negative value of #content's width + left margin. */
  }
  .two-sidebars #content
  {
    width: 560px;
    margin-left: 200px; /* The width of #sidebar-left */
    margin-right: -760px; /* Negative value of #content's width + left margin. */
  }

Soprattutto non bisogna mettere padding o border in questi definizioni (per motivi dei Broken Browsers). Puoi mettere tutti i padding e border che vuoi nei #content-inner. Questi regole (non mi ricordo il nome della tecnica - technique) funzionano in tutti i browser - anche quelli figo come Internet Explorer...

Adesso arriviamo alla tua matematica (preparati per un voto!):

/** content **/
  #content,
  .no-sidebars #content
  {
    float: left;
    width: 1000px;
    margin-left: 0;
    margin-right: -1000px; /* Negative value of #content's width + left margin. */
    padding: 0; /* DO NOT CHANGE. Add padding or margin to #content-inner. */
  }

Okay - formatto fisso larghezza 1000...
  .sidebar-left #content
  {
    width: 8px;
    margin-left: 200px; /* The width of #sidebar-left. */
    margin-right: -1000px; /* Negative value of #content's width + left margin. */
  }

No. In realtà bisogna invertire il significato di width e margin-left per la colonna sx. Quindi vuoi 200px per la sx? OK, allora:
  .sidebar-left #content
  {
    width: 800px;
    margin-left: 200px; /* The width of #sidebar-left. */
    margin-right: -1000px; /* Negative value of #content's width + left margin. */
  }

Andiamo avanti, Abbiamo finora larghezza 1000, sx 200...
  .sidebar-right #content
  {
    width: 750px;
    margin-left: 0px;
    margin-right: -750px; /* Negative value of #content's width + left margin. */
  }

Qui si lavorare in sottrazione. Quindi la dx sarà 1000 - 750 = 250 pixels...
  .two-sidebars #content
  {
    width: 540px;
    margin-left: 200px; /* The width of #sidebar-left */
    margin-right: -740px; /* Negative value of #content's width + left margin. */
  }

Nah. 1000 - 200 - 250 = 550 pixels. (Da scrivere 100 volte sulla lavagna) Quindi:
  .two-sidebars #content
  {
    width: 550px;
    margin-left: 200px; /* The width of #sidebar-left */
    margin-right: -750px; /* Negative value of #content's width + left margin. */
  }

Voto: 6-- ;-)

HTH

John

Più imparo, più dubito.

ciao John,
accetto di buon grado il tuo voto ma cerchiamo di fare un passo per volta perché più imparo e più dubito...
Quando imposto questi valori gli sto dicendo che se é:
.no-sidebars senza niente
.sidebar-left se c'è solo quella sinistra
.sidebar-right se c'è solo quella destra
.two-sidebars se ci sono entrambe...
OTTIMO!
ora perché dopo aver effettuato queste modifiche, utilizzando una parola aulica come sputtanato, é saltata tutta l'impaginazione i caratteri etc... é come se non leggesse più nulla dai files .css...
Grazie
Tz

Scusami, Tiziano, qualche volta il mi senso di umorismo funziona, e qualche volta, no...

tiziano1974 wrote:
ciao John,
accetto di buon grado il tuo voto ma cerchiamo di fare un passo per volta perché più imparo e più dubito...

Comunque la mate era sbagliato...

tiziano1974 wrote:
Quando imposto questi valori gli sto dicendo che se é:
.no-sidebars senza niente
.sidebar-left se c'è solo quella sinistra
.sidebar-right se c'è solo quella destra
.two-sidebars se ci sono entrambe...
OTTIMO!

No. Non esattamente:
.no-sidebars solo la colonna centrale
.sidebar-left colonna sinistra e centrale
.sidebar-right colonna centrale e destra
.two-sidebars colonna sinistra, centrale e destra
Comunque stiamo dicendo la stessa cosa...

tiziano1974 wrote:
ora perché dopo aver effettuato queste modifiche, utilizzando una parola aulica come sputtanato, é saltata tutta l'impaginazione i caratteri etc... é come se non leggesse più nulla dai files .css...
Grazie
Tz

Legge di Murphy #13 (che dice che c'è sempre un'altra legge di Murphy). Non lo so. Se usi Zen, puoi abilitare i wireframes (aiuta parecchio, ma può sputanare di più - altro legge di Murphy)... Altrimenti controlla le dimensioni con Firebug, o Developer Tools già parte di Chromium, o Developer Toolbar per IE...
Sicuramente hai provato F5 immagino...

Più imparo, più dubito.

ma io non ero arrabbiato è che cerco di capire anche io e il tuo motto cade a pennello cerco di capire ma mi imbatto in cose sempre più interessanti e devo studiare avanti...
domani se ho tempo mi ci metto nuovamente!

Il motto non è proprio mio - solo un abbreviazione di un citazione di un certo Johann Wolfgang von Goethe:

Quote:
We know accurately only when we know little; with knowledge doubt increases.

E' una frase molto ben conosciuto ai tedeschi ovviamente:

Quote:
Eigentlich weiß man nur, wenn man wenig weiß. Mit dem Wissen wächst der Zweifel.

Ho solo tradotto (con licenza poetica) la parte in grassetto...
(Thought you'd like to know ;-)
Probabilmente giocavo troppo a Trivial Pursuit quando ero (più) giovane.

Più imparo, più dubito.

il mio di motto che non inserisco mai é:
"Se in un primo momento l'idea non è assurda allora non c'è nessuna speranza che si realizzi." (A. Einstein)
era il motto della mia società... :-)
ora rimane solo su skype dove esisteva ancor prima!
Proverò se riesco ad avere un briciolo di tempo a effettuare le modifiche.
il problema in questi giorni era maggiore perché possedendo un mac non riuscivo a vedere i problemi con ie, ho dovuto trovare un programma per virtualizzare una macchina, trovare xp e far funzionare tutto decidendo di attivar la linea telefonica nella nostra nuova casa...come dire un poco de casin...

Grazie
Tz

parallels va bene per il Mac...

Più imparo, più dubito.

è quello che ho montato... ora cerco di capire dove ci sono i problemi e perché con ietester, consigliato da un'altra anima pia che cerca di darmi una mano! ;-)
ma capire perché con ie6 e ie 7 non si riesce a vedere proprio nulla...