oder CSS Problem (<nobr> und Mozilla)
TomIRL
- html
Hallo allerseits,
Ich suche schon seit 45 Minuten nach ner Erklärung:
Und zwar akzeptiert Mozilla nicht </nobr> d.h. alle relevanten Datensätze werden ausgelesen und erst danach erfolgt ein Umbruch.
Problem tritt nur im Mozilla auf im IE ists o.k.!
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>...
<link rel="stylesheet" href="portal.css" type="text/css">
</head>
<body>
<div class="textbox">
<?php...
print ("<nobr><a href="$f[l_url]">$f[l_name]</a></nobr> ");}
?>
</div>
Vielleicht liegt die Ursache auch im CSS konnte allerdings nichts finden, deshalb hier noch einmal die css.datei
/* Default settings for all Pages
*******************************************/
BODY,pre{font-family : Arial,Helvetica,sans-serif;color : #000080;background-color :#FFFFFF;text-decoration : none;font-size : 12px;}
/* The Link-behaviours
**********************/
A:link {color:#000080;text-decoration:underline;}
A:visited {color:#000080; text-decoration:underline;}
A:hover {color:#FF4040;text-decoration:none;}
A:active {color:#000080;text-decoration:none;}
.textbox {position:absolute; top:0px; left:200px; width:400px;}
/* The Headers
*********************/
H1 {font-size:20px;font-weight:bold;font-family : Arial,Helvetica,sans-serif;text-align: center;text-valign: middle}
H2 {font-size : 16px;font-weight:bold;font-family : Arial,Helvetica,sans-serif;}
H3 { font-size : 13px;font-weight:bold;font-family : Arial,Helvetica,sans-serif; color:#FF4040;}
Vielen Dank TomIRl
Kleiner Nachtrag noch:
Die URL liegen zum Teil in der form http://www.tld.de/
vor also mit abschliessendem Slash.
TomIRL
Ich hab zwischenzeitlich probiert das Problem über die css variante in den Griff zu bekommen.
Ohne Erfolg mit dem gleichen Ergebnis.
TomIRL
Hallo TOmIRL,
Imho war und ist <nobr> nichts, weder HTML noch CSS.
http://selfhtml.teamone.de/html/text/zeilenumbruch.htm#verhindern
Ich zitiere:
"Diese Möglichkeit gehört jedoch nicht zum offiziellen HTML-Sprachstandard. Sie sollten sie daher vermeiden."
Das HTML-Attribut war nowrap und ist es jetzt bei CSS auch.
http://selfhtml.teamone.de/html/tabellen/gestaltung.htm#zeilenumbruch
Die HTML-Version ist inzwischen deprecated und es wird explizit auf die Formatierungsmöglichkeit per CSS verwiesen.
Gruß
Kurt
Die HTML-Version ist inzwischen deprecated und es wird explizit auf die Formatierungsmöglichkeit per CSS verwiesen.
Ich habs über CSS versucht ("nowrap") diese Formatierung hat den gleichen EFfekt wie die <nobr> Variante.
Also IE funktioniert und im Mozilla wird gar nicht umgebrochen.
Ich werde heute Abend mal den Quelltext auseinandernehmen (Ohne PHP oder sonstigen Kram) und mal gucken wo die Ursache sitzt.
Trotzdem mal vielen Dank
TomIRL
Hallo TomIRL,
Ich habs über CSS versucht ("nowrap") diese Formatierung hat den gleichen EFfekt wie die <nobr> Variante.
Bist du dir sicher, daß du keinen Formatierungsfehler gemacht hast? Etwa den Bindestrich bei white-space vergessen oder sowas?
Diese Formatierung hat bei mir noch nie versagt, egal, wie lange die Zeile auch war und welchen Browser ich auch verwendet habe..
Gruß
Kurt
Bist du dir sicher, daß du keinen Formatierungsfehler gemacht hast? Etwa den Bindestrich bei white-space vergessen oder sowas?
Diese Formatierung hat bei mir noch nie versagt, egal, wie lange die Zeile auch war und welchen Browser ich auch verwendet habe..
Nö bin ich mir nicht sicher aber ich habs einfach nicht gefunden!
Deshalb die Seite ist eigentlich eher ein Hobby von mir, deshalb hab ich auch noch keine richtige Zeit gefunden mich drum zu kümmern, aber jetzt gehe ich mal ran mal gucken wo die Ursache ist.
TomIRL
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
falsch
<?php...
falsch
print ("<nobr><a href="$f[l_url]">$f[l_name]</a></nobr> ");}
/* Default settings for all Pages
*******************************************/
falsch
BODY,pre{font-family : Arial,Helvetica,sans-serif;color : #000080;background-color :#FFFFFF;text-decoration : none;font-size : 12px;}
falsch
/* The Link-behaviours
**********************/
falsch
/* The Headers
*********************/
falsch
--
&&
falsch
&&
Vielleicht mal ne Erklärung?
Warum Streichst Du meine Kommentare in der CSS Datei als falsch an?
Und hast Du keinen Mut zu Deinem richtigen Namen zu stehen?
TomIRl
Hi,
Hallo allerseits,
Ich suche schon seit 45 Minuten nach ner Erklärung:
Und zwar akzeptiert Mozilla nicht </nobr> d.h. alle relevanten Datensätze werden ausgelesen und erst danach erfolgt ein Umbruch.
nobr ist kein HTML-Element. Wenn dieses also nicht interpretiert wird, kannst Du Dich nicht bei Mozilla beschweren.
print ("<nobr><a href="$f[l_url]">$f[l_name]</a></nobr> ");}
Innerhalb des Links soll nicht umgebrochen werden. Wenn da kein Whitespace oder ähnliches drinsteht, wird auch nicht umgebrochen (auch ohne das nobr). Nach dem Link darf auch nicht umgebrochen werden (nbsp = Non-Breaking space).
Wieso sollte hier also umgebrochen werden?
cu,
Andreas
Hi,
Hallo allerseits,
Ich suche schon seit 45 Minuten nach ner Erklärung:
Und zwar akzeptiert Mozilla nicht </nobr> d.h. alle relevanten Datensätze werden ausgelesen und erst danach erfolgt ein Umbruch.nobr ist kein HTML-Element. Wenn dieses also nicht interpretiert wird, kannst Du Dich nicht bei Mozilla beschweren.
Da hast Du recht.
Ich hab auch schon mit css Formatierung versucht hat den gleichen Effekt.
print ("<nobr><a href="$f[l_url]">$f[l_name]</a></nobr> ");}
Innerhalb des Links soll nicht umgebrochen werden. Wenn da kein oder ähnliches drinsteht, wird auch nicht umgebrochen (auch ohne das nobr). Nach dem Link darf auch nicht umgebrochen werden (nbsp = Non-Breaking space).
Genau das ist das Problem die Namen kommen aus einer DB d.h. es sind Whitespaces drin.
Also Omas Küche z.bsp.
Und natürlich verhält er sich dann so, dass er
den Link umbricht.
Das versuche ich zu verhindern.
Nun hab ich durch probieren folgendes rausgefunden:
Dieser Code klappt:
<?php
include("connect.php");
$sql="SELECT *FROM p_kategorie, p_links WHERE l_k_id=k_id ORDER BY k_name";
$zeilen = mysql_query($sql,$db);
//echo mysql_errno() . ": " . mysql_error(). "\n";
if (!$zeilen) die("Anfrage war nicht erfolgreich");
else {
while ($f = mysql_fetch_array($zeilen)){
if ($f["k_id"]!=$v_OLD){
print ("<h3>$f[k_name]</h3>");
$v_OLD=$f["k_id"];}
-----------------
Das ist dazu gekommen!
?>
<?php
------------------------
print ("<nobr><a href="$f[l_url]">$f[l_name]</a> </nobr>");}}
?>
Und dieser nicht:
<?php
print ("<nobr><a href="$f[l_url]">$f[l_name]</a> </nobr>");}}
?>
<?php
include("db_connect.php");
$sql="SELECT *FROM p_kategorie, p_links WHERE l_k_id=k_id ORDER BY k_name";
$zeilen = mysql_query($sql,$db);
//echo mysql_errno() . ": " . mysql_error(). "\n";
if (!$zeilen) die("Anfrage war nicht erfolgreich");
else {
while ($f = mysql_fetch_array($zeilen)){
if ($f["k_id"]!=$v_OLD){
print ("<h3>$f[k_name]</h3>");
$v_OLD=$f["k_id"];}
print ("<nobr><a href="$f[l_url]">$f[l_name]</a> </nobr>");}}
?>
Ich analysiere gerade den Quelltext, um irgendetwas rauszufinden was sich durch das Serverseitige Aktion verändert haben könnte.
Bin ein bischen ratlos.
Ich will das jetzt aber verstehen.
Ist irgendwie völlig komisch.
Danke für die Hilfe.
TomIRl
Hi,
Genau das ist das Problem die Namen kommen aus einer DB d.h. es sind Whitespaces drin.
Dann ersetze in diesen Texten die Whitespaces durch
cu,
Andreas
Hallo TomIRL,
versuche mal folgendes in deiner CSS-Datei:
a {white-space:nowrap; }
oder aber über eine Klasse...
Gruß
Kurt