Punto informatico Network
Login Esegui login | Non sei registrato? Iscriviti ora (è gratuito!)
Username: Password:
  • Annuncio Pubblicitario

Selezione CSS

Cerchi consigli per migliorare il tuo sito? Vuoi aprire un sito in poco tempo?
Discuti con altri webmaster, chiedi chiarimenti ed opinioni in tutta libertà.
Lo spam verrà cancellato.

Selezione CSS

Messaggioda ssjx » gio mar 30, 2006 5:38 pm

Salve a tutti

mi dite come si fa a permettere la scelta fra diversi fogli di stile senza dover creare diverse pagine?

mi spiego meglio: supponiamo creo una pagina html o xhtml che sia in cui metto SOLO i contenuti e le varie classi e lasciando ad un css esterno tutta la parte grafica (insomma quanto predica lo Zen Garden)

solo che non ho capito come si fa poi a creare un link che carichi la medesima pagina (quindi non voglio creare un doppione per ogni pagina) ma con un css diverso (nel mio caso mi servirebbe per avere una pagina stampabile quindi meno carica e senza immagini e colori vari, ma mi interessa anche un discorso più generale)

Ciao
Usavo IE e mi lamentavo... usavo Mozilla e mi lamentavo, decisamente meno ma mi lamentavo, ... poi ho trovato Opera e fu amore a prima vista
Avatar utente
ssjx
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5756
Iscritto il: ven nov 26, 2004 3:37 pm
Località: Barcellona

Messaggioda Boo » gio mar 30, 2006 6:11 pm

Direi che la cosa migliore è fare una pagina php con una variabile.
Es. pagina.php mostra il codice normale mentre pagina.php?stampa=true mostra il css della stampa

come fare

metti un controllo su <body> del tipo
if($stampa == true) echo 'id="print"';
in modo che il <body> diventi <body id="print">
fatto ciò basta fare un unico CSS differenziando il codice normale da quello con id print.
es.

body {background-color: #f93;}
#print body {background-color: #fff;}
Avatar utente
Boo
Silver Member
Silver Member
 
Messaggi: 1276
Iscritto il: sab dic 04, 2004 3:41 pm

Messaggioda ssjx » gio mar 30, 2006 6:29 pm

uhmm ............... non sono sicuro di aver capito

in pratica ti seguo fino al fatto di cerare un css unico con i valori differenziati, ma per la pagina non ho capito dove mettere quel controllo

verrebbe una cosa di questo genere

Codice: Seleziona tutto
<head>
<title>Titolo</title>
</head>

<body id="print">

Corpo del documento con le varie classi

<a href="pagina.php?stampa=true" target="_blank">Link per stampare la pagina</a>

</body>


ma if($stampa == true) echo 'id="print"'; dove lo devo ficcare?
Usavo IE e mi lamentavo... usavo Mozilla e mi lamentavo, decisamente meno ma mi lamentavo, ... poi ho trovato Opera e fu amore a prima vista
Avatar utente
ssjx
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5756
Iscritto il: ven nov 26, 2004 3:37 pm
Località: Barcellona


Messaggioda Boo » gio mar 30, 2006 6:31 pm

Se devi fare un link tipo <a href="">Versione stampabile</a> non ti serve nemmeno php basta che la pagina stampabile abbia <body id="print">
Avatar utente
Boo
Silver Member
Silver Member
 
Messaggi: 1276
Iscritto il: sab dic 04, 2004 3:41 pm

Messaggioda ssjx » gio mar 30, 2006 6:39 pm

aspè ................ praticamente allora il css leggero viene caricato dal tag <body id="print"> ?

io avevo capito che veniva caricato dal link a pagina.php?stampa=true

comunque mi spiegheresti tu come intendevi? ................ giusto per capire
Usavo IE e mi lamentavo... usavo Mozilla e mi lamentavo, decisamente meno ma mi lamentavo, ... poi ho trovato Opera e fu amore a prima vista
Avatar utente
ssjx
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5756
Iscritto il: ven nov 26, 2004 3:37 pm
Località: Barcellona

Messaggioda Boo » gio mar 30, 2006 6:41 pm

ssjx ha scritto:aspè ................ praticamente allora il css leggero viene caricato dal tag <body id="print"> ?

Già

ssjx ha scritto:io avevo capito che veniva caricato dal link a pagina.php?stampa=true

comunque mi spiegheresti tu come intendevi? ................ giusto per capire

In un certo senso sì perché quella variabile dà al body l'attributo id="print" in modo da usare un'unica pagina ed un unico CSS.
Avatar utente
Boo
Silver Member
Silver Member
 
Messaggi: 1276
Iscritto il: sab dic 04, 2004 3:41 pm

Messaggioda ssjx » gio mar 30, 2006 6:54 pm

niente ............ non ti seguo

ho capito che potrei risparmiarmi il php usando il codice che ho scritto sopra (da cui però dovrei togliere id="print" giusto? ) e quindi in pratica il problema l'ho risolto, ma nell'ottica di allargare le mie conoscenze vorrei capire tu come lo avresti fatto tu in php con quella variabile

dove andrebbe messa e come si dovrebbe caricare la pagina stampabile senza il link come l'ho fatto io?

scusa per lo stress [boxed]
Usavo IE e mi lamentavo... usavo Mozilla e mi lamentavo, decisamente meno ma mi lamentavo, ... poi ho trovato Opera e fu amore a prima vista
Avatar utente
ssjx
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5756
Iscritto il: ven nov 26, 2004 3:37 pm
Località: Barcellona

Messaggioda Boo » gio mar 30, 2006 7:34 pm

chiama la pagina index.php

Codice: Seleziona tutto
<?php $pagina = $_GET['pagina']; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html dir="ltr">
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="language" content="en-us" />
<meta name="author" content="" />
<meta name="keywords" content="" />
<meta name="description" content="" />
<style type="text/css">
body {background: #f99;}
#print body {background: #fff;}
</style>
</head>
<body <?php if($pagina == "stampa") echo 'id="print"';?>
<a href="index.php?pagina=stampa">Versione stampabile</a>
</body>
</html>
Avatar utente
Boo
Silver Member
Silver Member
 
Messaggi: 1276
Iscritto il: sab dic 04, 2004 3:41 pm

Messaggioda ssjx » gio mar 30, 2006 10:42 pm

preziosissimo come sempre [applauso] [applauso] ................. prima o poi però me lo devo studiare sto php ............. metà di quel codice non lo capisco proprio [boxed]

alla prossima [:-D]
Usavo IE e mi lamentavo... usavo Mozilla e mi lamentavo, decisamente meno ma mi lamentavo, ... poi ho trovato Opera e fu amore a prima vista
Avatar utente
ssjx
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5756
Iscritto il: ven nov 26, 2004 3:37 pm
Località: Barcellona

Messaggioda Boo » gio mar 30, 2006 10:50 pm

leggilo con attenzione, non è difficile da intuire.
Avatar utente
Boo
Silver Member
Silver Member
 
Messaggi: 1276
Iscritto il: sab dic 04, 2004 3:41 pm

Messaggioda ssjx » ven mar 31, 2006 3:30 pm

vediamo ............... se ho capito bene

Codice: Seleziona tutto
<body <?php if($pagina == "stampa") echo 'id="print"';?>


dovrebbe dire in pratica che se ad un link viene associata la parola stampa allora (echo significa allora giusto?) deve dare a body l'id print

ed in effetti il link sotto rispecchia la cosa


però non ho capito la prima riga a che serve
Usavo IE e mi lamentavo... usavo Mozilla e mi lamentavo, decisamente meno ma mi lamentavo, ... poi ho trovato Opera e fu amore a prima vista
Avatar utente
ssjx
Membro Ufficiale (Gold)
Membro Ufficiale (Gold)
 
Messaggi: 5756
Iscritto il: ven nov 26, 2004 3:37 pm
Località: Barcellona

Messaggioda Boo » ven mar 31, 2006 5:02 pm

ssjx ha scritto:vediamo ............... se ho capito bene

Codice: Seleziona tutto
<body <?php if($pagina == "stampa") echo 'id="print"';?>


dovrebbe dire in pratica che se ad un link viene associata la parola stampa allora (echo significa allora giusto?) deve dare a body l'id print

ed in effetti il link sotto rispecchia la cosa

Giusto

ssjx ha scritto:però non ho capito la prima riga a che serve

A semplificare la variable, altrimenti avresti dovuto usare $_GET['pagina']; ogni volta.
Avatar utente
Boo
Silver Member
Silver Member
 
Messaggi: 1276
Iscritto il: sab dic 04, 2004 3:41 pm


Torna a Sviluppo Web

Chi c’è in linea

Visitano il forum: Nessuno e 6 ospiti

Powered by phpBB © 2002, 2005, 2007, 2008 phpBB Group
Traduzione Italiana phpBB.it

megalab.it: testata telematica quotidiana registrata al Tribunale di Cosenza n. 22/09 del 13.08.2009, editore Master New Media S.r.l.; © Copyright 2008 Master New Media S.r.l. a socio unico - P.I. 02947530784. GRUPPO EDIZIONI MASTER Spa Tutti i diritti sono riservati. Per la pubblicità: Master Advertising