Zu große Bilder sprengen das Layout - Druckversion +- MyBB.de Forum (https://www.mybb.de/forum) +-- Forum: Archiv (https://www.mybb.de/forum/forum-57.html) +--- Forum: MyBB 1.2.x und älter (https://www.mybb.de/forum/forum-27.html) +---- Forum: Allgemeiner Support (https://www.mybb.de/forum/forum-36.html) +---- Thema: Zu große Bilder sprengen das Layout (/thread-2965.html) Seiten: Seiten:
1
2
|
Zu große Bilder sprengen das Layout - Dyers Eve - 07.09.2006 Hallo MyBB-Community, Ich habe mein Forum auf eine feste Breite von 980px gesetzt. Alles funktioniert wunderbar, zwar lädt der Browser die "Threadlists" in einer größen Breite, trotz korrekter Pixelangaben, aber wenn fertig geladen worden ist, haben alle Tabellen die korrekte Breite. Wenn nun jemand ein Bild mit einer Größe von z.B. 1024*x postet, sprengt dieser Post das gesammte Layout, was nicht wirklich schön aussieht. Hier mal ein Beispiel: http://forum.4allplayers.org/showthread.php?tid=116 Da Tabellen-Zellen Begrenzungen vom größeren Inhalt generell nicht mehr beachtet werden, gibt es irgendwie ein Möglichkeit das zu beheben (Einstellungen im ACP ? ) ? Vielen Dank, Dyers Eve RE: Zu große Bilder sprengen das Layout - Michael - 07.09.2006 Nein, eine Einstellung dazu gibt es nicht. Du kannst die Benutzer nur dazu auffordern die Bilder als Attachments zu posten. Irgendwo hier im Forum hab es mal ein Javascript für die Verkleinerung, ich finds aber gerade nicht... RE: Zu große Bilder sprengen das Layout - Mak - 08.09.2006 Ich bin nicht 100%ig sicher, ob das geht, aber versuch mal im Beitragsbereich im CSS ein overflow: auto oder oberflow: scroll, vielleicht löst das das Problem. RE: Zu große Bilder sprengen das Layout - Dyers Eve - 08.09.2006 Ja, ich habs gefunden Unter Templates -> Post Bit Templates -> postbit -> PHP-Code: <p style="overflow: auto"> Mit "overflow: hidden" wird das Bild abgetrennt und mit "overflow: scroll" werden bei jedem Beitrag die Scrollbars angezeigt (Der Balken allerdings nur bei den "übergroßen" Beiträgen). Ist zwar leider keine Verkleinerung, aber ist ebenfalls eine elegante Lösung. Jetzt wird bei den zu groß geratenen Beiträgen am Ende des Post eine waagerechte Scrollbar angezeigt. Dyers Eve RE: Zu große Bilder sprengen das Layout - Mak - 08.09.2006 Der Thread, den Michael oben gemeint hat, ist wohl der hier: https://www.mybb.de/forum/showthread.php?tid=208 Der ist aber nicht mehr ganz aktuell und ich weiß auch nicht, ob das mit 1.2 klappt. RE: Zu große Bilder sprengen das Layout - Dyers Eve - 11.09.2006 Da leider der IE 6.0 sowie auf der IE 7.0 den overflow-Befehl nicht unterstützen bzw. das Layout immernoch zerschießen (wen wunderts...). Möchte ich gerne die ganze Sache mit Javascript lösen! Dazu habe ich in der Datei class_parser.php im inc-Ordner ab Zeile 626 folgenden Code gefunden: PHP-Code: function mycode_parse_img($url, $dimensions=array()) Ehrlich gesagt verstehe ich die erste if-Abfrage nicht wirklich, da nach meinen Beobachtungen die Bedingung niemals erfüllt ist. Danach habe ich versucht in der else -Schleife die Sache mit "onload" und "onklick" versucht zu lösen, aber das funktioniert leider nicht. Den Javascript Code setzt er mir einfach an das Ende des Bildes, wie eine Zeichenkette. Hier mein Javascript-Code Versuch den ich hinter alt=\"\" setzen wollte: onload="javascript:if(this.height > 600) { this.width = 600; }" Weiss jemand von euch Rat ? Dyers Eve RE: Zu große Bilder sprengen das Layout - Michael - 11.09.2006 Ich hab den oben angesprochenen Thread gefunden: https://www.mybb.de/forum/showthread.php?tid=474&pid=4835#pid4835 Das sollte die schonmal weiterhelfen. RE: Zu große Bilder sprengen das Layout - Dyers Eve - 11.09.2006 Leider konnte ich den ersten Vorschlag nicht testen, da der Link zur Datei resizeall.js nicht mehr funktioniert. Den 2.Vorschlag habe ich ausprobiert, funktioniert aber leider nicht. E RE: Zu große Bilder sprengen das Layout - Michael - 11.09.2006 Hast du das Ganze schon wieder ausgebaut? Ich kann das Javascript nirgends im Quellcode deines Forums finden. RE: Zu große Bilder sprengen das Layout - Dyers Eve - 12.09.2006 Ja, nachdem ich den folgenden Code: onload="javascript:if(this.height > 600) { this.width = 600; }" in der Datei class_parser.php im inc-Ordner... return "<img src=\"{$url}\" border=\"0\" alt=\"\" onload="javascript:if(this.height > 600) { this.width = 600; } "/>"; so eingefügt habe, hat er den Code als String neben das Bild gepackt...(neben jedes Bild auch hinter die Bilder die korrekt sind z.B. Signaturen...) Das gleiche hiermit: return "<img src=\"{$url}\" border=\"0\" alt=\"\" onload=\"if(largerThan(this.width,800)) {this.width=800;this.alt='Klicken, um größere Version zu sehen';}\" onmouseover=\"if(this.alt) this.style.cursor='pointer';\" onclick=\"if(this.alt) window.open('');\" />"; Nachdem ich im "headerinclude" Template das Script eingefügt habe... EDIT: Also wenn man im <img> tag den CSS-Befehl style="max-width: 720px" und im Template postbit <p style="overflow: auto"> einfügt, dann funktioniert es perfekt im Firefox und Opera...Der IE kennt den CSS Befehl max-width noch nicht. Aber ein Anklicken wäre natürlich deutlich besser... Dyers Eve |