Dreamweaver CS4

Fra le varie cose di cui mi occupo, faccio anche il beta tester di quel monumento di programma che è Dreamweaver CS4. Non sono imparziale, lo so, ma è uno dei miei programmi preferiti, se non il preferito.

Da un po’ di tempo è disponibile per il download una beta pubblica, che chiede però di essere utenti registrati sul sito Adobe. Anche Fireworks CS4 gode dello stesso trattamento, fateci un giretto.

Ma fra tutte le novità e mirabilie, come Air, Spry, code hinting per Ajax, tabelle dinamiche, integrazione con Subversion, tutto quello che si può leggere sulla pagina di presentazione, la cosa che mi ha lasciato più stupito è la caratteristica chiamata “CSS Best Pratice“. Inoltre, la consueta “Finestra di ispezione proprietà” è stata modificata, e ora sono presenti due pulsanti: HTML e CSS, che fanno da scorciatoia ai relativi pannelli.

Bella mossa, e anche l’interfaccia è molto migliorata. Ma mi sono commosso davanti agli wizard… non riesco a non copiare/incollare il codice di una pagina creata selezionando uno dei modelli predefiniti.

Lo so che è un po’ lunga, ma non vi viene un po’ di magone pensando che questo è l’output di uno wizard di un editor HTML della famigerata categoria “WYSIWYG“? Mi sembra più bravo lui di tanti webmaster che conosco. Leggete i commenti nel CSS, che ovviamente può essere posto in un file a sé stante ma che ho lasciato nella pagina per comodità. Non avete anche voi l’impressione che finalmente sia passato del tempo? Ora aspetto che si realizzi il mio sogno, ovvero che Dreamweaver e Framemaker si riuniscano nel “mio” programma, DreamMaker.


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
<style type="text/css">
<!--
body {
font: 100% Verdana, Arial, Helvetica, sans-serif;
background: #666666;
margin: 0; /* è buona norma impostare a zero i valori margin e padding dell'elemento body per tenere conto delle diverse impostazioni predefinite dei browser*/
padding: 0;
text-align: center; /* centra il contenitore nei browser IE 5*. Il testo viene quindi impostato con l'allineamento predefinito a sinistra nel selettore #container */
color: #000000;
}

/* Suggerimenti per i layout elastici
1. Poiché le dimensioni generali dei layout elastici sono basate sulla dimensione predefinita del carattere dell'utente, il risultato di questi layout è meno prevedibile. Se usati correttamente, risultano più accessibili per gli utenti che hanno bisogno di visualizzare i caratteri con dimensioni maggiori, perché la lunghezza delle righe rimane proporzionale.
2. Le dimensioni dei div di questo layout sono basate sul 100% della dimensione del carattere nell'elemento body. Se si riduce la dimensione generale del testo specificando font-size: 80% nell'elemento body o in #container, ricordarsi che l'intero layout si ridurrà in proporzione. Per compensare eventualmente questo effetto, si può aumentare la larghezza dei vari div.
3. Se le dimensioni dei caratteri vengono modificate in modo diverso per ogni div anziché a livello globale (ovvero, se si assegna a #sidebar1 una dimensione di carattere del 70% e a #mainContent dell'85%), le dimensioni generali di ciascun div verranno modificate in modo proporzionale. È possibile adattare il risultato in base alle dimensioni finali dei caratteri.
*/
.twoColElsLtHdr #container {
width: 46em; /* questa larghezza crea un contenitore che riempie una finestra del browser di 800 px se il testo viene lasciato alle dimensioni di carattere predefinite del browser */
background: #FFFFFF;
margin: 0 auto; /* i margini auto (insieme a una larghezza) centrano la pagina */
border: 1px solid #000000;
text-align: left; /* sostituisce l'impostazione text-align: center nell'elemento body. */
}
.twoColElsLtHdr #header {
background: #DDDDDD;
padding: 0 10px; /* questo padding corrisponde all'allineamento a sinistra degli elementi nei div sottostanti. Se in #header viene utilizzata un'immagine anziché un testo, può essere utile rimuovere il padding. */
}
.twoColElsLtHdr #header h1 {
margin: 0; /* azzerando il valore margin dell'ultimo elemento del div #header si evita la compressione del margine, con la creazione di uno spazio inspiegabile tra i div. Se il div è circondato da un bordo, questo accorgimento non è necessario perché anche il bordo impedisce la compressione del margine */
padding: 10px 0; /* l'uso del valore padding al posto di margin consente di distanziare l'elemento dai bordi del div */
}


/* Suggerimenti per sidebar1:
1. Se si imposta un valore font-size per questo div, la larghezza globale del div viene modificata di conseguenza.
2. Poiché si lavora in ems, è meglio non applicare un padding alla barra laterale, poiché, nei browser conformi agli standard, verrebbe aggiunto alla larghezza producendo una larghezza effettiva non prevedibile.
3. Per creare spazio tra il lato del div e gli elementi al suo interno, è possibile applicare un margine sinistro e destro a tali elementi, come descritto nella regola ".twoColElsLtHdr #sidebar1 p".
*/
.twoColElsLtHdr #sidebar1 {
float: left;
width: 12em; /* poiché questo elemento è mobile, occorre specificare una larghezza */
background: #EBEBEB; /* il colore di sfondo verrà visualizzato per tutta la lunghezza del contenuto all'interno della colonna, ma non oltre */
padding: 15px 0; /* un padding superiore e inferiore creano uno spazio visivo all'interno di questo div */
}
.twoColElsLtHdr #sidebar1 h3, .twoColElsLtHdr #sidebar1 p {
margin-left: 10px; /* è necessario applicare un margine sinistro e destro a ogni elemento che verrà inserito nelle colonne laterali */
margin-right: 10px;
}


/* Suggerimenti per mainContent:
1. Se si assegna a questo div #mainContent un valore font-size diverso dal div #sidebar1, i margini del div #mainContent e la larghezza del div #sidebar1 saranno basati sui rispettivi valori font-size. Può essere utile modificare i valori di questi div.
2. Lo spazio tra mainContent e sidebar1 viene creato con il margine sinistro del div mainContent. Indipendentemente dalla quantità di contenuto presente nel div sidebar1, lo spazio della colonna rimane inalterato. È possibile rimuovere questo margine sinistro se si desidera che il testo del div #mainContent riempia lo spazio di #sidebar1 quando il contenuto di #sidebar1 finisce.
3. Per evitare il problema del 'float drop', può essere necessario eseguire una prova per determinare le dimensioni massime approssimative dell'immagine o elemento, poiché questo layout è basato sulle dimensioni di carattere dell'utente combinate con i valori impostati. Tuttavia, se nel browser dell'utente la dimensione del carattere è impostata su un valore più basso del normale, nel div #mainContent sarà disponibile meno spazio di quello evidenziato nella prova.
4. Nel commento condizionale di Internet Explorer riportato di seguito, la proprietà zoom viene utilizzata per assegnare "hasLayout" a mainContent, al fine di evitare vari bug specifici di IE che potrebbero verificarsi.
*/
.twoColElsLtHdr #mainContent {
margin: 0 1.5em 0 13em; /* il margine destro può essere specificato in ems o pixel. Crea lo spazio lungo il lato destro della pagina. */
}
.twoColElsLtHdr #footer {
padding: 0 10px; /* questo padding corrisponde all'allineamento a sinistra degli elementi nei div sovrastanti. */
background:#DDDDDD;
}
.twoColElsLtHdr #footer p {
margin: 0; /* azzerando il valore margin del primo elemento del footer si evita il rischio di compressione del margine, con la creazione di uno spazio tra i div */
padding: 10px 0; /* il padding di questo elemento crea uno spazio, così come avverrebbe specificando un valore margin, senza il problema della compressione del margine */
}

/* Classi varie riutilizzabili */
.fltrt { /* questa classe può essere utilizzata per rendere mobile un elemento a destra nella pagina. L'elemento reso mobile deve precedere l'elemento al quale deve essere affiancato sulla pagina. */
float: right;
margin-left: 8px;
}
.fltlft { /* questa classe può essere utilizzata per rendere mobile un elemento a sinistra nella pagina.*/
float: left;
margin-right: 8px;
}
.clearfloat { /* questa classe deve essere inserita in un elemento div o break e deve essere l'elemento finale prima della chiusura di un contenitore che deve contenere per intero un elemento mobile */
clear:both;
height:0;
font-size: 1px;
line-height: 0px;
}
-->
</style><!--[if IE]>
<style type="text/css">
/* inserire in questo commento condizionale le correzioni css per tutte le versioni di IE */
.twoColElsLtHdr #sidebar1 { padding-top: 30px; }
.twoColElsLtHdr #mainContent { zoom: 1; padding-top: 15px; }
/* la proprietà zoom proprietaria riportata sopra fornisce a IE l'elemento hasLayout necessario per evitare vari bug */
</style>
<![endif]--></head>


<body class="twoColElsLtHdr">


<div id="container">
<div id="header">
<h1>Intestazione</h1>
<!-- end #header --></div>
<div id="sidebar1">
<h3>Contenuto sidebar1</h3>
<p>Il colore di sfondo di questo div viene visualizzato solo per tutta la lunghezza del contenuto. Se invece si desidera visualizzare una linea di divisione, inserire un bordo sul lato sinistro del div #mainContent se esso conterrà sempre una quantità maggiore di contenuto rispetto al div #sidebar1. </p>
<p>Donec eu mi sed turpis feugiat feugiat. Integer turpis arcu, pellentesque eget, cursus et, fermentum ut, sapien. </p>
<!-- end #sidebar1 --></div>
<div id="mainContent">
<h1> Contenuto principale</h1>
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent aliquam, justo convallis luctus rutrum, erat nulla fermentum diam, at nonummy quam ante ac quam. Maecenas urna purus, fermentum id, molestie in, commodo porttitor, felis. Nam blandit quam ut lacus.</p>
<h2>Titolo di livello H2 </h2>
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent aliquam, justo convallis luctus rutrum, erat nulla fermentum diam, at nonummy quam ante ac quam. Maecenas urna purus, fermentum id, molestie in, commodo porttitor, felis. </p>
<!-- end #mainContent --></div>
<!-- Questo elemento di clearing deve seguire immediatamente il div #mainContent al fine di forzare il div #container a contenere tutti i float di livello inferiore --><br class="clearfloat" />
<div id="footer">
<p>Piè di pagina
</p>
<!-- end #footer --></div>
<!-- end #container --></div>
</body>
</html>

interfaccia di Dreamweaver CS4

Annunci

7 pensieri su “Dreamweaver CS4

  1. comunque, questa è vera classe:

    .twoColElsLtHdr #mainContent { zoom: 1; padding-top: 15px; }
    /* la proprietà zoom proprietaria riportata sopra fornisce a IE l’elemento hasLayout necessario per evitare vari bug */

  2. io lo uso per lavoro e mi tengo stretto dreamweaver 8.02 (più che di grafica.. io scrivo in php).

    Il dreamweaver CS4 è installato su il nuovo mac, e la grafica ha riscontrato varie problematiche nella visualizzazione grafica degli object flash (con il suo nuovo sistema di scelta di visualizzazione) tra i vari browser IE, Firefox, Safari e opera..
    Visto che hai fatto il beta tester magari mi puoi chiarire se con il nuovo script (swfobject_modified.js) se inserisco l’swf in una tabella mi crea una sbagliata formattazione dell’altezza, che risulta fastidiosa specie con immagini di sfondo.. meglio passare alla totale costruzione in css del layout di siti con dreamweaver CS4 ??

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...