Grundsatzfrage: Reines CSS-Layout in Contenido möglich?

Gesperrt
meta02
Beiträge: 19
Registriert: Fr 6. Mai 2005, 16:23
Wohnort: Berlin
Kontaktdaten:

Grundsatzfrage: Reines CSS-Layout in Contenido möglich?

Beitrag von meta02 » Do 9. Jun 2005, 13:18

Hallo Community,

ich habe nun schon erfolgreich 4 Websites mit Contenido in Tabellenlayout ohne Frames umgesetzt.

Aktuell verwende ich die Version 4.4.5

Jetzt möchte ich zum ersten Mal ein reines CSS-Layout ohne Tabellen und nur mit verschachtelten DIV-Containern verwenden.

Der erste Test war negativ. Zwar erscheinen im Backend die Buttons zum editieren dort, wo sie jeweils sein sollen (also innerhalb meiner DIV-Container). Beim Versuch Content einzufügen, erhalte ich aber folgende Fehlermeldung:

Zeile: 128
Zeile: 9
Fehler: 'document.forms.editcontent.data' ist Null oder kein Objekt
Code: 0
URL: http://bla

Kann man das in Contenido von Tabellenlayout auf CSS-Layout anpassen?
Hat das schon jemand versucht? Was wäre zu tun?

Mir geht es unter anderem hier auch um Barrierefreiheit. Finde dazu bisher aber im Forum nichts verwertbares. Schliesslich hat reines CSS-Layout gegenüber Tabellen auch weitere Vorteile und ist nach Meinung vieler Entwickler die modernere Layout-Variante.

Kann mir vielleicht jemand der Hauptentwickler von Contenido diese Frage beantworten?

Vielen Dank

meta02

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Do 9. Jun 2005, 13:21

Vermutlich sind einige Tags nicht geschlossen -> überprüfe das Layout mit einem HTML-Validator

meta02
Beiträge: 19
Registriert: Fr 6. Mai 2005, 16:23
Wohnort: Berlin
Kontaktdaten:

Beitrag von meta02 » Do 9. Jun 2005, 17:10

Hallo timo,

vielen Dank für die schnelle Reaktion. Habe den code bei w3c validiert und erneut getestet. Die Fehlermeldung bleibt dieselbe. Images lassen sich über das Standard-Bildmodul problemlos integrieren, Texte über das Standard-Modul aber nicht.

Wenn ich in den Quelltext der Seite im BE schaue, kommt mir folgendes merkwürdig vor:

<script language="javascript">

// searches the classname in the td above or the tr above
function getCellClass(element) {

var el = document.getElementById(element);
var cell = el.offsetParent;

// if there is a classname in the td return the classname
if ( cell.className != '' ) {
return cell.className;
}

// set a flag in this td
if ( cell.id == '' ) {
cell.id = 'yes';
var flg = 'yes'

} else {
var flg = cell.id;

}

//else go to the tagname table above and search dowen for the tr tags
while (el.tagName != 'TABLE') {
el = el.offsetParent;
}


var elements = el.getElementsByTagName('TR');

//go thrue all tr tags
for (var row in elements) {

if (isNaN(elements[row])) {
var cells = elements[row].getElementsByTagName('TD');
for (var id in cells) {
if(isNaN(cells[id])){

// check if the flg(td cell) is in this tr if true return the calssname
if (cells[id].id==flg&&elements[row].className != '') {
return elements[row].className;
}
}
}

}




}



return false;
}

Dieses in Contenido integrierte JavaScript durchsucht doch nur Tabellen-Tags (TR, TD). Was aber, wenn keine Tabellen existieren, sondern wie bereits weiter oben beschrieben, nur DIV-Container?

Kann es daran liegen?

meta02

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Do 9. Jun 2005, 18:30

'document.forms.editcontent.data' sagt aus, daß er das Formular mit dem Namen "editcontent" nicht finden kann -> in 99.9% der Probleme hier im Forum deutet das auf nicht vorhandene Tags im Layout oder eben ein Fehlerhaftes Layout hin. Kannst du dein Layout mal hier posten?

stese
Beiträge: 1040
Registriert: Fr 3. Dez 2004, 17:47
Wohnort: München
Kontaktdaten:

Beitrag von stese » Do 9. Jun 2005, 18:59

also am contenido liegts nicht - höchstwahrscheinlich an deinen modulen oder layouts - ich baue grundsätzlich nur reine css layouts und verzichte auf tabellen und das funktionierte bisher immer problemlos. das problem sollte also wo anders bei dir liegen.

meta02
Beiträge: 19
Registriert: Fr 6. Mai 2005, 16:23
Wohnort: Berlin
Kontaktdaten:

Hier mal der code

Beitrag von meta02 » Fr 10. Jun 2005, 12:05

Hallo timo, hallo stese,

ich habe hier einfach angefangen, bunte DIV-Container nebeneinander darzustellen um das Ganze zu testen. Es ist kein fertiges Layout.

Der Validator sagt: Alles Schön!

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>DIV-Layout-Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="css/divformate.css">

</head>

<body>
<div class="aussen">

<div class="innengelb">
CMS_CONTAINER[1]</div>

<div class="innenrot">
CMS_CONTAINER[2]</div>

<div class="innenblau">
CMS_CONTAINER[3]</div>

<div class="innenschwarz">
CMS_CONTAINER[4]</div>

<div class="innengruen">
CMS_CONTAINER[5]</div>


<div style="clear:both; border:0px;
line-height:0; height:0; "></div>


</div>
</html>

Mein Stylesheet:

body {
font-family: Geneva, Verdana, Arial, Helvetica, sans-serif;
background-position: 0px 0px;
margin-left: 0px;
margin-top: 0px;
font-size: 8pt;
}

td {
font-family: Geneva, Verdana, Arial, Helvetica, sans-serif;
}

.aussen {
background-color: #369;
border: 0px;
padding: 1% ;
width: 100%;
}

.innengelb {
background-color: #FFc;
padding: 5px 10px;
float:left;
margin-right:0px;
width: 20%;
height: 100%;
}

.innenrot {
background-color: #F66;
padding: 5px 10px;
float:left;
width: 20%;
height: 100%;
}

.innenblau {
background-color: #0066CC;
padding: 5px 10px;
float:left;
width: 20%;
height: 100%;
}

.innenschwarz {
font-family: Geneva, Verdana, Arial, Helvetica, sans-serif;
background-position: 0px 0px;
font-size: 0,5em;
color: #FFFFFF;
background-color: #000;
padding: 5px 10px;
float:left;
width: 20%;
height: 100%;
}

.innengruen {
background-color: #00CC00;
padding: 5px 10px;
float:left;
width: 10%;
height: 100%;
}

Hier das Textmodul:

<?php echo "CMS_HTML[1]"; ?> sollte bekannt sein ;-)

Danke für Eure Hilfe

meta02

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Fr 10. Jun 2005, 12:07

Und wo ist Dein schließendes body-Tag ...? :wink:

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » Fr 10. Jun 2005, 12:07

dann würde ich mal den validator wechseln.

Bei dir gibt es keinen closing body tag.

Wir erzählen dir nicht umsonst, daß du dein Layout überprüfen sollst...

meta02
Beiträge: 19
Registriert: Fr 6. Mai 2005, 16:23
Wohnort: Berlin
Kontaktdaten:

Ist mir peinlich,

Beitrag von meta02 » Fr 10. Jun 2005, 12:56

trotzdem danke :oops:

dann kann es ja jetzt losgehen mit dem eigentlichen Projekt. Funktioniert alles wunderbar. Ich weiß auch nicht wann mein editor den </body>-Tag geschluckt hat. Liegt wohl am unaufmerksamen cut and paste. Ihr hattet 100%ig Recht.

meta02

Snoopy
Beiträge: 239
Registriert: Mo 15. Sep 2003, 18:45
Kontaktdaten:

Re: Ist mir peinlich,

Beitrag von Snoopy » Fr 10. Jun 2005, 13:55

Schau mal hier:

www.handballmainz05.de ist zwar in dieser Form noch nicht XHTML -Strict valid, aber das sind Feinheiten, ansonnsten ist das Layout komplett Tabellenfrei
Gruß aus Hamburg :wink:

kashban
Beiträge: 44
Registriert: Fr 7. Mai 2004, 10:29
Kontaktdaten:

Beitrag von kashban » So 3. Jul 2005, 11:10

Zumindest in Contenido 4.4.5 ist es ohne tiefe Eingriffe in den Quelltext von Contenido oder die DB nicht möglich, valides XHTML 1.x zu erzeugen. Contenido erzeugt alle Metatags ohne schließendes Element, die Standard-Container wie CMG_IMG arbeiten auch ohne...

Da wäre vermutlich Handlungsbedarf von four for business AG. Wie sieht es mit Version 4.5 aus, ist das dort inzwischen behoben worden?

i-fekt
Beiträge: 1520
Registriert: Mo 3. Jan 2005, 02:15
Wohnort: Chemnitz
Kontaktdaten:

Beitrag von i-fekt » So 3. Jul 2005, 12:49

^_^
Zuletzt geändert von i-fekt am Fr 22. Okt 2010, 13:08, insgesamt 1-mal geändert.
Gruss,
Michael

"Keep on riding this Bike!" (Jackson Mulham)

timo
Beiträge: 6284
Registriert: Do 15. Mai 2003, 18:32
Wohnort: Da findet ihr mich nie!
Kontaktdaten:

Beitrag von timo » So 3. Jul 2005, 17:50

Ob XHTML ein Standard ist oder nicht, bleibt dahingestellt. XHTML ist genausoviel oder genauso wenig Standard wie HTML in jeder Version. Das alles sind nur "Empfehlungen" des W3C.

http://www.w3.org/TR/xhtml1/

Wenn aber jemand eine XHTML-konforme Ausgabe bauen möchte, sollte Contenido da nicht im Wege stehen. Daher werden wir uns da noch etwas überlegen

Gesperrt