Firefox - Logo wird nicht angezeigt
Jnnbo
- css
0 Linuchs0 Jnnbo- htaccess
0 Jnnbo0 dedlfix- browser
0 Jnnbo0 dedlfix0 MrMurphy10 MudGuard0 Matthias Apsel
Moin,
ich verstehe die Welt gerade nicht mehr. Eigentlich ist Firefox mein Liebling, allerdings zickt er immer mehr rum, ob es an mir liegt, weiß ich nicht.
Mein Simpler Code sieht so aus
<div class="logo">
<img src="img/design/logo.jpg" alt="Logo">
</div>
Google Chrome (der macht es richtig) stellt diesen Code so da
Firefox (der gerade mal wieder zickt) stellt es so da
Das Logo wird einfach nicht angezeigt. Das CSS dazu sieht so aus
.logo {
margin-bottom:3em;
padding-left:5px;
}
woher kommt bitte das </img> am Ende?
ich verstehe die Welt gerade nicht mehr.
Geht mir auch dauernd so, habe mich inzwischen daran gewöhnt.
Der FF zickt wirklich in der Form, dass er gewisse "Kenntnisse" einer Web-Seite auch nach Änderung und Neu-Laden nicht vergisst.
Schmeiss alle FF-Instanzen raus (ALT F4) und dann neu an. Hat mir mehrfach geholfen. Das Teil ist kostenfrei, was willst du erwarten?
Und melde bitte zurück, ob das dein Problem gelöst hat.
Linuchs
Hallo Linuchs,
Und melde bitte zurück, ob das dein Problem gelöst hat.
ich habe jetzt mal alles rückgängig gemacht, was ich in den letzten Stunden gemacht habe. Muss leider sagen es liegt an meiner htaccess Datei und zwar an dieser Zeile:
RewriteRule ([^/]*)/([^/]*)/([^/]*)$ a-hersteller-serie-geraet.php [l]
Wenn ich diese raus nehme, kann ich auch mein Logo wieder sehen, nehme ich dieses rein ist es weg. Mit dieser Zeile möchte ich erreichen bzw. habe ich erreicht dass ich solche URLS bekomme:
/brother/dcp/dcp--110-series
Tja, jetzt stehe ich ganz schön dumm da :/ Ich kann auf beides nicht verzichten.
Meine komplette htaccess sieht so aus
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
RewriteRule ([^/]*)/([^/]*)/([^/]*)$ a-hersteller-serie-geraet.php [l]
Hallo Linuchs,
ok, ich kann Verzeichnisse ausschließen:
RewriteRule ^(img)($|/) - [L]
Da ich mich mit htaccess überhaupt nicht auskenne, weiß ich auch nicht wirklich was diese Zeile alles macht
RewriteRule ([^/]*)/([^/]*)/([^/]*)$ a-hersteller-serie-geraet.php [l]
aber nun funktioniert es.
Moin!
Hallo Linuchs,
ok, ich kann Verzeichnisse ausschließen:
RewriteRule ^(img)($|/) - [L]
Warum nicht Dateiendungen?
RewriteRule \.[Jj][Pp][Ee]{0,1}[Gg]$ - [L]
Frisst alles was auf .jpg, .jpeg (auch mit großen Buchstaben) endet.
Odern noch besser: existierende Dateien ausnehmen? Ok. Das ist, weil der Server nachsehen muss, durchaus "teuer":
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^(.*)$ - [L]
Da ich mich mit htaccess überhaupt nicht auskenne, weiß ich auch nicht wirklich was diese Zeile alles macht
Dein Mut zur Wissenslücke ist echt bewundernswert. Und Dein Glück auch. Du hast ja geschrieben, Du bzw. Deine Firma habe noch Kunden.
RewriteRule ([^/]*)/([^/]*)/([^/]*)$ a-hersteller-serie-geraet.php [l]
Die Werte aus den rundem Klammern benutzt Du nicht auf der rechten Seite. Kannst diese also genau so gut weglassen und Speicher sparen. Der Server wird Dir das danken, wenn eine DDoS-Atacke läuft oder ein Crawler durchdreht.
RewriteRule [^/]/[^/)/[^/*$ a-hersteller-serie-geraet.php [l]
Anders ausgedrückt: Irgendwas mit mindestens 2 Slachs, vor und zwischen denen irgendwas oder auch nichts steht. ** Anders ausgedrückt:** Der Regex gehört kauterisiert und durch etwas, ersetzt, dessen Funktion bekannt ist und der Aufgabe gerecht wird.
aber nun funktioniert es.
Halte ich für Zufall. Besonders wenn alles noch gehen sollte.
Jörg Reinholz
Moin!
RewriteRule [^/]/[^/]/[^/]*$ a-hersteller-serie-geraet.php [l]
Anders ausgedrückt: Irgendwas mit mindestens 2 Slachs, vor und zwischen und hinter denen irgendwas oder auch nichts steht. Also frisst Dein toller Regex auch nur zwei Slashes.
Anders ausgedrückt: Der Regex gehört kauterisiert und durch etwas ersetzt, dessen Funktion bekannt ist und der Aufgabe genau gerecht wird - statt irgendwas zu machen und dann Fehler wie die nicht angezeigte Grafik zu produzieren
Jörg Reinholz
Hallo Jörg,
Warum nicht Dateiendungen?
RewriteRule \.[Jj][Pp][Ee]{0,1}[Gg]$ - [L]
Frisst alles was auf .jpg, .jpeg (auch mit großen Buchstaben) endet.
Was ist, wenn ein Bild plötzlich die Endung *.png *.jpeg *.bmp *.jpg-large hat? ALLES schon dabei gehabt. Wie gesagt ich bekomme die Bilder geliefert und muss diese auch nehmen, ein bearbeiten ist aus Lizenz rechtlichen Gründen nicht erlaubt und bei rund 40.000 Artikel überhaupt nicht möglich, dazumal ich jede Woche bestimmt 1-2 Updates erhalte.
Odern noch besser: existierende Dateien ausnehmen? Ok. Das ist, weil der Server nachsehen muss, durchaus "teuer":
RewriteCond %{REQUEST_FILENAME} -f RewriteRule ^(.*)$ - [L]
Was heißt "teuer" der Server ist doch dazu da um zu ackern und bei einer Seite die vielleicht pro Tag 100mal aufgerufen wird kann man nicht von viel Traffic reden.
Dein Mut zur Wissenslücke ist echt bewundernswert. Und Dein Glück auch. Du hast ja geschrieben, Du bzw. Deine Firma habe noch Kunden.
Jetzt fang doch bitte nicht schon wieder mit solchen Aussagen an, ich kann es einfach nicht mehr hören. Wenn ein Kunde bei mir anruft und eine Patrone bestellt und sagt er möchte aber gerne noch ein Nachfüllset dazu, dann sag ich auch nicht „ Ja passen Sie aber mal auf, sie haben einen teuren Drucker, Sie wissen schon, was dabei alles schief gehen kann, im schlimmsten Fall ist Ihr Drucker anschließend reif für die Tonne“ Nein, das mache ich 100% nicht. Wie schon oft geschrieben es muss funktionieren und gut ist.
Als du vor 5 – 10 – 15 – 20 Jahren angefangen hast, wusstest du natürlich schon alles, richtig? Wenn ja, dann herzlichen Glückwunsch.
RewriteRule ([^/]*)/([^/]*)/([^/]*)$ a-hersteller-serie-geraet.php [l]
Anders ausgedrückt:** Der Regex gehört kauterisiert und durch etwas, ersetzt, dessen Funktion bekannt ist und der Aufgabe gerecht wird.
Ich habe ja bereits geschrieben was ich mit dieser Zeile erreichen möchte. Nach dem .de soll z.B. folgendes kommen /brother/dcp/dcp-357-c alle drei Bezeichnungen müssen dynamisch sein.
Moin!
Was heißt "teuer" der Server ist doch dazu da um zu ackern und bei einer Seite die vielleicht pro Tag 100mal aufgerufen wird kann man nicht von viel Traffic reden.
"Teuer" nennt man einen Algorithmus der "viel" Rechenzeit, Speicher oder andere knappe Ressourcen (z.B. Ports) "verbraucht". Denke bitte daran, dass Du die Abrufhäufigkeit nicht steuern kannst. Ich kannte mal einen gewissen Dialerparasit, der hat in seinem "größten deutschen Hilfe-Forum" (es war ein Board) stolz verkündet, dass der Aufbau der Hauptseite 33 Datenbankabfragen erforderte und x Sekunden dauerte. Das war eines der vielen Plugins für dieses "Fertigboard".
Einfach 20-30x [F5] drücken hat gereicht um das Ding temporär abzuschießen. Und man konnte dabei wunderbar zuschauen.
Als du vor 5 – 10 – 15 – 20 Jahren angefangen hast, wusstest du natürlich schon alles, richtig? Wenn ja, dann herzlichen Glückwunsch.
Vor 20 Jahren hab ich sehr viel kleinere Brötchen gebacken.
Nach dem .de soll z.B. folgendes kommen /brother/dcp/dcp-357-c alle drei Bezeichnungen müssen dynamisch sein.
Du willst ein virtuelles Verzeichnis. Ok. Dann baue Deine Links etwa so:
RewriteRule ^printers/(.*)/(.*)/(.*)$ hsm.php?hersteller=$1&serie=$2&modell=$3 [L]
RewriteRule ^printers/(.*)/(.*)$ hsm.php?hersteller=$1&serie=$2 [L]
RewriteRule ^printers/(.*)$ hsm.php?hersteller=$1 [L]
RewriteRule ^printers hsm.php [L]
Was Du suchst steht, falls geliefert, dann sauber in $_GET und erfordert keine weiteren Bockstürze. Dafür, dass "hp/laserjet/2000m" nicht in $_GET['hersteller'] landet, sorgt die also einzuhaltende Reihenfolge und der Abbruch durch [L].
Weitere Wünsche, z.B. schließende (Dir-)Slashes, berücksichtige ich gern, wenn ich dafür Zeit übrig habe oder (z.B. durch Drohung mit Waffen oder Geld) gezwungen werde, mir diese zu nehmen.
Jörg Reinholz
Hallo,
(z.B. durch Drohung mit Waffen oder Geld)
Was ist wenn dir mit Waffeln gedroht wird?
Gruß
Kalk
Liebe Mitdenker, liebe Wissende, liebe Neugierige,
(z.B. durch Drohung mit Waffen oder Geld)
Was ist wenn dir mit Waffeln gedroht wird?
mmmh
und dazu ein großer Cappuccino mit Rum ;-)
Dann können mich die Slashes aber mal am Ende ...
Spirituelle Grüße
Euer Robert
robert.r@online.de
Hallo,
boah, was für ein Ausdruck! Ich musste erst mal nachsehen, was das bedeutet!
So long,
Martin
Tach!
Muss leider sagen es liegt an meiner htaccess Datei und zwar an dieser Zeile:
RewriteRule ([^/]*)/([^/]*)/([^/]*)$ a-hersteller-serie-geraet.php [l]
Kann es sein, dass du ein Cache-Problem hast? Die anderen Browser hatten das Bild noch im Cache und der FF musste es neu laden, woraufhin es der Server nicht mehr ausliefern konnte. Die Ausgbe des DOM und der sortierten CSS-Regeln ist nämlich gleich. Dass Attribute in anderer Reihenfolge als im Quelltext stehen, ist nicht weiter relevant.
dedlfix.
Hallo dedlfix,
Kann es sein, dass du ein Cache-Problem hast? Die anderen Browser hatten das Bild noch im Cache und der FF musste es neu laden, woraufhin es der Server nicht mehr ausliefern konnte. Die Ausgbe des DOM und der sortierten CSS-Regeln ist nämlich gleich. Dass Attribute in anderer Reihenfolge als im Quelltext stehen, ist nicht weiter relevant.
japp das war gestern Abend leider der Fall. Ich hatte meine Seite den ganzen Tag im Google Chrome auf und wollte mein CSS im Firefox testen. Da ist mir das Problem dann aufgefallen.
Aber wie kann es sein dass der Firefox aus
<img src="img/design/logo.jpg" alt="Logo">
plötzlich dieses macht
<img alt="Logo" src="img/design/logo.jpg">
können bzw. dürfen die Browser sich das HTML so drehen wie sie wollen und auch noch andere Sachen wie z.B. ::bevor hinzufügen?
Tach!
Aber wie kann es sein dass der Firefox aus
<img src="img/design/logo.jpg" alt="Logo">
plötzlich dieses macht
<img alt="Logo" src="img/design/logo.jpg">
können bzw. dürfen die Browser sich das HTML so drehen wie sie wollen und auch noch andere Sachen wie z.B. ::bevor hinzufügen?
Die Reihenfolge, wie Attribute im HTML stehen, ist unerheblich. Die dürfen das genauso rumdrehen, wie du das in beliebiger Reihenfolge schreiben darfst. Problematisch dürfte nur werden, wenn du ein Attribut mehrfach notierst. Da wird dann wohl eins ignoriert werden.
Auch ::before und ::after ist harmlos. Wenn es keine Auswirkungen hat, darf das ruhig da sein. Andererseites haben Browser auch Default-Stylesheets, mit denen die Elemente formatiert werden, auch wenn du zu denen nichts gesagt hast. Das dürfen und müssen die Browser tun, sonst gibts ohne Autoren-CSS nur Fließtextsuppe.
dedlfix.
Hallo
können bzw. dürfen die Browser sich das HTML so drehen wie sie wollen und auch noch andere Sachen wie z.B. ::bevor hinzufügen?
Das müssen sie sogar. Wenn auch nicht so flapsig wie du es hier darstellst. Sie sollen schließlich versuchen aus jeden noch so falschen Quelltext eine mehr oder weniger vernünftige Darstellung zu zaubern. Wenn sie fehlerhafte Daten bekommen oder der Quellcode Fehler enthält sollen sie schließlich nicht wie ein Programm abstürzen.
Da die Behandlung von Fehlern nicht geregelt sein kann hält halt jeder Browser seine eigene Fehlerbehandlung vorrätig.
Ein daraus resultierendes Problem ist leider, das viele Webseitenersteller ihre Fehler nicht mehr erkennen, die Seite wird ja angezeigt. Das dies trotz ihrer Fehler geschieht verstehen sie nicht.
Gruss
MrMurphy
Hi,
Aber wie kann es sein dass der Firefox aus
<img src="img/design/logo.jpg" alt="Logo">
plötzlich dieses macht
<img alt="Logo" src="img/design/logo.jpg">
Du guckst in der DOM-Anzeige.
Aus dem Quellcode erstellt der Browser das Document-Object-Model (DOM), merkt sich zu allen Elementen, welche Attribute angegeben waren, welche Kinder in welcher Reihenfolge aufgetreten sind usw.
Und bei der DOM-Anzeige werden die Elemente dann wieder dargestellt mit allen Kindern und den angegebenen Attributen. Da die Reihenfolge der Attribute vollkommen wurscht ist (es kommt nur auf Existenz und Wert an), stellt der Browser sie in der Reihenfolge dar, die ihm am Besten gefällt (z.B. nach Name sortiert). Die Reihenfolge der Attribute kann dann zufällig mit der aus dem Quelltext übereinstimmen, muß es aber nicht.
cu,
Andreas a/k/a MudGuard
Hallo Jnnbo,
können bzw. dürfen die Browser sich das HTML so drehen wie sie wollen und auch noch andere Sachen wie z.B. ::bevor hinzufügen?
Das machen sie nicht. Du meinst bestimmt die Entwicklerwerkzeuge, die
um die Arbeit des Entwicklers zu erleichtern.
In der Quelltextansicht (STRG+U) solltest du den Quellcode so sehen, wie er beim Browser angekommen ist und zwar auch bevor irgendwelches JavaScript tätig geworden ist.
Bis demnächst
Matthias