Bild max. Höhe usw.
lima-city → Forum → Die eigene Homepage → HTML, CSS & Javascript
abfragen
anweisung
attribut
bild
code
eigenschaft
entsprechen
falsch code
file
legaler code
meinung
schrecklicher legaler code
semikolon
string
tag
url
verkleinern
verzeichnis
vorherigen code
wirkung
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hallo piratentaverne
das sieht ein wenig komisch aus. Ich kenne diese Syntax nicht, daher würde ich es so machen:
.file { min-width:50px; max-width:300px; min-height:50px; max-height:300px; }
Durch das Zeichen # kann es sein das alles auskommentiert wurde und daher auch keine Wirkung brachte. Achte ausserdem darauf das jede Anweisung mit einem Semikolon beendet wird. Falls dies immer noch nicht funktioniert dann solltest du den Namen der Klasse überprüfen ob diese identisch sind.
Außerdem unterstützen ältere Browser (vorallem der Internet Explorer) diese Anweisungen nicht und können daher nicht angezeigt werden. Das wirkt sich dann höchstwahrscheinlich negativ auf das Layout aus.
Gruß S.Brosch -
Ich hab jetzt die Rauten weggelassen und es tut sich immer noch nichts, aber da die Datei die angezeigt werden soll eine Variable ist, kann das auch dadran liegen?
PHP-Code:
echo "<img src=./uploads/$file class=file>"
-
Sry :) Hier nochmal der ganze Code ;)
<html> <body> <P> <?php $verzeichnis = openDir("./uploads"); while ($file = readDir($verzeichnis)) { if ($file != "." && $file != "..") { echo " <link href=download_preview.css type=text/css rel=stylesheet/> <table> <tr> <td><img src=./uploads/$file class=file></td> </tr> <tr> <td><a href=./uploads/$file target=\"_blank\">$file</a></td> </tr> </table> \n"; } } closeDir($verzeichnis); ?> <P> <img src="./pics/loeschen.gif" width=20 height=20><a href="delete.php">Löschen</a> </body> </html>
-
Sicherlich nicht ganz so professionell, aber du kannst es auch direkt in den <img> Tag reinschreiben
<html> <body> <P> <?php $verzeichnis = openDir("./uploads"); while ($file = readDir($verzeichnis)) { if ($file != "." && $file != "..") { echo " <link href=download_preview.css type=text/css rel=stylesheet/> <table> <tr> <td><img src=./uploads/".$file." class='file' style='max-width: 300px; max-height: 300px;'></td> </tr> <tr> <td><a href=./uploads/".$file." target=\"_blank\">".$file."</a></td> </tr> </table> \n"; } } closeDir($verzeichnis); ?> <P> <img src="./pics/loeschen.gif" width=20 height=20><a href="delete.php">Löschen</a> </body> </html>
Ich bin aber der Meinung, dass Max-Width bzw "max" Werte nicht von allen Browsern gelesen bzw umgesetzt werden können. Wenn aber eh ALLE Bilder diese Größe haben sollen, warum machst du dann nicht entsprechen Thumbnails (Vorschaubilder) beim Hochladen oder lässt sie auf die gewünschte Größe verkleinern. Das wäre vermutlich der beste Weg.
-
sonok schrieb:
Böse Socke! Das ist sogar legaler Code, aber wirklich sehr hässlicher und schrecklicher legaler Code.
echo "<img src=./uploads/$file class=file>"
So nimmt der doch alles als String was da steht ...
Und moorwiesen, das ist aber kein legaler Code. Man verwendet in HTML niemals, wirklich niemals einfache Anführungszeichen.
Bitte gewöhnt euch doch an, Strings in PHP zwischen einfache Anführungszeichen und Eigenschaften von HTML-Tags zwischen doppelte Anführungszeichen zu schreiben. -
Dann verbessere ich mal fix
<html> <body> <P> <?php $verzeichnis = openDir("./uploads"); while ($file = readDir($verzeichnis)) { if ($file != "." && $file != "..") { echo " <link href=download_preview.css type=text/css rel=stylesheet/> <table> <tr> <td><img src=./uploads/".$file." class=\"file\" style=\"max-width: 300px; max-height: 300px;\"></td> </tr> <tr> <td><a href=./uploads/".$file." target=\"_blank\">".$file."</a></td> </tr> </table> \n"; } } closeDir($verzeichnis); ?> <P> <img src="./pics/loeschen.gif" width=20 height=20><a href="delete.php">Löschen</a> </body> </html>
... hat keiner gesehen ;) -
Das ist immer noch falscher als falsch. Bei der Hälfte der HTML-Tag-Eigenschaften fehlen die doppelten Anführungszeichen jetzt gänzlich. Nimm einfache Anführungszeichen und ließ dir den Code zwei Mal durch, bevor du ihn verwendest oder veröffentlichst.
Beitrag zuletzt geändert: 6.1.2011 13:16:57 von drafed-map -
Und wie funktioniert das nun mit dem max-width und max-height?
-
drafed-map hat recht, so ist das HTML sehr unsauber, und genau das könnte auch der Grund sein, warum die CSS nicht anspringen: das HTML könnte fehlerhaft geparst werden.
D.h.: immer allte Tags schließen (<p> bleibt bei dir immer offen) und setzte bei Attributen Anführungszeichen!
echo '<img src="./upload/$file" class="file" alt="Bild">';
Bei Bildern sollte auch immer das alt-Attribut gesetzt werden. -
Ich misch mich auch mal eben ein
echo '<img src="./upload/'.$file.'" class="file" alt="Bild"/>';
Was du machen kannst um dein Problem zu lösen:
Du kannst mit PHP die Größe des Bildes mit http://www.php.net/manual/de/function.getimagesize.php abfragen. Dann machst du ein if/elseif Konstrukt, und sagst sowas wie:
echo '<img src="./upload/'.$file.'" alt="Bild" style="'.($bildbreite>$bildhoehe&&$bildbreite>300?'width:300px;':bildhoehe>300?'height:300px':'').'"/>';
Ich kann nicht garantieren, das ich keine Syntaxfehler habe, weil sich ein Textfeld nicht so zum scripten eignet, aber wenn du dem folgst, dann sollte zumindest ein ordentliches ergebnis dabei herauskommen -
Es zeigt leider nur das an: Bild300'height:300px).'/>
-
Könntest du evtl den ganzen Code posten, dann kann ich dir auch erklären was da vorliegt. Ich meine ich könnte dir das auch in deinen vorherigen Code schreiben, aber dadurch lernst du nicht den Fehler später zu vermeiden.
-
Der ganze Code ist doch oben gepostet!^^
-
Ich meine wie du meinen Code eingebunden hast.
-
Achso^^
<link rel="stylesheet" href="./css/image.css" type="text/css" media="screen" />
-
mit eingebunden mein ich schon den PHP teil von mir in deinem script
-
Ne, ich habs jetzt! Ich hab einfach den Java Pictureviewer genommen! Trotzdem danke ;)!
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage