Was hat Firefox gegen "cursor:hand"?
Christoph Schnauß
- browser
hallo Forum,
ich muß auf einer Seite ein bißchen schummeln und ein Eingabefeld so umformatieren, daß es wie ein Verweis aussieht. Das geschieht (in der CSS) so:
input {border: none;
font-size: 0.9em;
background: #FFF;
padding: 0 4px 0 4px;
margin-bottom: -1px;
cursor: hand;}
Ich möchte das "Händchen" haben, damit beim Überfahren mit der Maus das, was im Eingabefeld steht, optisch wie ein Verweis wirkt. Und das machen auch die Browser einschließlich Firefox mit. Nur: Firefox meldet zusätzlich in der Fehlerkonsole: "Warnung: Fehler beim Verarbeiten des Wertes für Eigenschaft 'cursor'. Deklaration ignoriert." Was meint der Kumpel denn damit?
Grüße aus Berlin
Christoph S.
benutz opitional im html-code deines Div-Element folgenden Style:
style="cursor:pointer;" der ursprungswert deines css-stylesheets
wird hierdurch überschrieben und du brauchst keine spezielle CSS-Datei für untersciedliche browser zu coden...
des sollte reichen...ff akzeptiert hand anscheinen nicht ;)
hoffe mal das reicht dir...
Hallo Christoph,
Und das machen auch die Browser einschließlich Firefox mit.
Wundert mich. cursor:hand ist kein CSS-konformer Wert. Siehe http://de.selfhtml.org/css/eigenschaften/anzeigefenster.htm#cursor
Kein Wunder also, dass der meckert. Nimm cursor:pointer, wenn du eine Link-Hervorhebung willst.
Jonathan
Morgen!
cursor: hand;
Diese Deklaration wird glaub ich kein Browser kennen, wenn du das "Händchen" haben willst, brauchst du
cursor: pointer;
MfG Emanuel
Hallo
cursor: hand;
Diese Deklaration wird glaub ich kein Browser kennen, ...
Oohhh doch! Einer kennt den, dreimal darfste raten, wer. beachte: "Beachten Sie" ;-)
Tschö, Auge
hallo,
Diese Deklaration wird glaub ich kein Browser kennen, ...
Oohhh doch!
Grmpf. Dann wird also doch noch eine "Browserweiche" resp. ein conditional comment fällig; ich wollte eigentlich ohne auskommen.
Grüße aus Berlin
Christoph S.
Hallo
Diese Deklaration wird glaub ich kein Browser kennen, ...
Oohhh doch!Grmpf. Dann wird also doch noch eine "Browserweiche" resp. ein conditional comment fällig; ich wollte eigentlich ohne auskommen.
Allein deswegen einen CC benutzen? Ich teile zwar nicht Cheatahs Ablehnung der CCs, aber für die Auslegung von cursor:pointer|hand; würde ich, so wie er es gewiss empfehlen würde, einen Hack bemühen.
Tschö, Auge
hallo Auge,
Ich teile zwar nicht Cheatahs Ablehnung der CCs, aber für die Auslegung von cursor:pointer|hand; würde ich, so wie er es gewiss empfehlen würde, einen Hack bemühen.
Ich teile Cheatahs Auffassungen oftmals, er hat einfach, wenn man einmal gelernt hat, seine häufig etwas kryptischen Anmerkungen zu verstehen, meistens recht. Mir selber erscheint ein "Hack" aufwendiger als ein CC, daher tendiere ich dazu, in diesem Fall zu diesem Mittel zu greifen und eben einen conditional comment einzusetzen.
Im übrigen: auch die anderen am Thread Beteiligten haben mit dem Hinweis auf "pointer" (statt "hand") natürlich völlig recht. Ich schleppe halt gelegentlich solches Zeugs, das ich nur sehr, sehr selten brauche, aber vor Jahren mal als "gültig" gelernt habe mit mir rum und vergleiche nicht immer sofort, ob das denn noch gilt.
Grüße aus Berlin
Christoph S.
Moin,
Ich schleppe halt gelegentlich solches Zeugs, das ich nur sehr, sehr selten brauche, aber vor Jahren mal als "gültig" gelernt habe mit mir rum und vergleiche nicht immer sofort, ob das denn noch gilt.
... zumal die richtige Lösung in diesem Fall mal wieder der Intuition völlig entgegenläuft, denn unter "pointer" hätte ich den normalen Standard-Zeiger, also üblicherweise den Pfeil verstanden.
Ciao,
Martin
Hallo Martin!
... zumal die richtige Lösung in diesem Fall mal wieder der Intuition völlig entgegenläuft, denn unter "pointer" hätte ich den normalen Standard-Zeiger, also üblicherweise den Pfeil verstanden.
Über die Verkorksheit derer, die im W3C sitzen, braucht man ja nicht zu diskutieren. Siehe Box-Modell. Schon mal ein Paket bekommen, deren Abmessungen die vom Versender gewünschten AUSSEN-Abstände haben? ;)
Viele Grüße aus Frankfurt/Main,
Patrick
@@Der Martin:
... zumal die richtige Lösung in diesem Fall mal wieder der Intuition völlig entgegenläuft, denn unter "pointer" hätte ich den normalen Standard-Zeiger, also üblicherweise den Pfeil verstanden.
Welcher erscheint, wenn man mit dem Mauscursor umherirrt (currere), was man schlecht als „zeigen“ (to point) bezeichnen kann.
Vielleicht rührt deine Intuition daher, dass es im Deutschen nur den Begriff „Zeiger“ gibt, während im Englischen zwischen „pointer“ und „cursor“ unterschieden wird.
Was ziemlicher Unsinn ist, ist der IE-Wert "hand" für die 'cursor'-Eigenschaft. Man sollte nie etwas nach der gegenwärtig gewünschten Darstellung benennen; sondern nach der Funktion. (Es ist zwar Konsens, den Zeiger auf einem Link als Hand darzustellen, der aber nicht nicht überall und für alle Zeiten gelten muss.)
Live long and prosper,
Gunnar
Hallo Gunnar!
Man sollte nie etwas nach der gegenwärtig gewünschten Darstellung benennen; sondern nach der Funktion.
Und wie sollte man dieses nennen:
? ;) [*]
[*] Dein Beitrag gab mir die Gelegenheit, eine alte Grafik wieder rauszukramen... - ist also nicht persönlich gemeint!
Viele Grüße aus Frankfurt/Main,
Patrick
Hallo Patrick,
Geil! Das wird mein neuer Standard-Linkzeiger! :-D
So long,
Martin
Hallo Martin!
Geil! Das wird mein neuer Standard-Linkzeiger! :-D
Jo... der ziert jetzt auch meine hier mehrmals vorgestellte Stinkefinger-Seite für GB-Spammer ;)
Viele Grüße aus Frankfurt/Main,
Patrick
Hi,
[*] Dein Beitrag gab mir die Gelegenheit, eine alte Grafik wieder rauszukramen...
Guuut gemacht! :)
Gruß, Cybaer
Hi,
... zumal die richtige Lösung in diesem Fall mal wieder der Intuition völlig entgegenläuft, denn unter "pointer" hätte ich den normalen Standard-Zeiger, also üblicherweise den Pfeil verstanden.
Welcher erscheint, wenn man mit dem Mauscursor umherirrt (currere), was man schlecht als „zeigen“ (to point) bezeichnen kann.
doch, selbstverständlich. Fast überall, wo ich mit dem Mauszeiger auf irgendwas zeige, hat er die bekannte Pfeilform. Lediglich Fensterrahmen, an denen man die Größe der Fenster ändern kann, nehmen da eine Sonderstellung ein - und Textfelder, blödsinnigerweise. Denn den üblichen I-Zeiger, der in Textfeldern benutzt wird, sieht man meist sehr schlecht, weshalb ich den bei mir auch durch ein Bleistift-Symbol ersetzt habe.
Vielleicht rührt deine Intuition daher, dass es im Deutschen nur den Begriff „Zeiger“ gibt, während im Englischen zwischen „pointer“ und „cursor“ unterschieden wird.
Eben, und unter dem "Cursor" wird dann üblicherweise die "Schreibmarke" bei der Texteingabe verstanden, unter "pointer" der Mauszeiger. Gelegentlich wird aber leider auch der Mauszeiger als Cursor bezeichnet, wodurch eine gewisse Mehrdeutigkeit entsteht.
Was ziemlicher Unsinn ist, ist der IE-Wert "hand" für die 'cursor'-Eigenschaft. Man sollte nie etwas nach der gegenwärtig gewünschten Darstellung benennen; ...
Das ist wieder eine andere Geschichte.
So long,
Martin
Ich teile zwar nicht Cheatahs Ablehnung der CCs, aber für die Auslegung von cursor:pointer|hand; würde ich, so wie er es gewiss empfehlen würde, einen Hack bemühen.
Ich bezweifle dass er einen anachronistischer Browser wirklich für so relevant hält, um sich seinen Code zu versauen
Ich schleppe halt gelegentlich solches Zeugs, das ich nur sehr, sehr selten brauche, aber vor Jahren mal als "gültig" gelernt habe mit mir rum und vergleiche nicht immer sofort, ob das denn noch gilt.
Diese Frage kam hier, als FF auftauchte mehrmals im Monat, insofern wäre eine Suche sicher zielführend gewesen. Aber ich versteh nicht, warum gerade du nicht den naheliegendsten Weg bei einem Problem gehst
selfhtml >Stylesheets/CSS > CSS-Eigenschaften > Anzeigefenster > cursor
Ich bin exakt diesen Weg zigmal gegangen, weil ich das Problem nur zu gut kenne, da ich lange Zeit den IE 4 genutzt habe und immer wieder vergessen hatte wie die Werte lauteten.
Struppi.
Hi,
daher tendiere ich dazu, in diesem Fall zu diesem Mittel zu greifen und eben einen conditional comment einzusetzen.
Eine Grunddefinition von CSS (ähnlich bei HTML) ist es, daß Clients unbekannte Eigenschaften bz. Werte schlicht zu ignorieren haben (wobei die Art des Ignorierens von der Position des Codes abhängig ist: Stylesheet/Inline-CSS).
Wer also meint, auf diese Grundlagen verzichten zu müssen, weil sonst sein Code von einer Maschine nicht mehr "validiert" wird, der mag das tun (und dann natürlich z.B. auch auf schon vereinzelt auftretende zukünftige CSS-3-Eigenschaften verzichten).
Ich find's, genau wie bei HTML, eher lächerlich ...
Gruß, Cybaer
Hallo Christoph,
Diese Deklaration wird glaub ich kein Browser kennen, ...
Oohhh doch!Grmpf. Dann wird also doch noch eine "Browserweiche" resp. ein conditional comment fällig; ich wollte eigentlich ohne auskommen.
Das ist hier _absolut_ unnötig. Man braucht hier weder Conditional Comments noch irgendwelche abstrusen CSS-Hacks. Folgende Angabe reicht *völlig* aus:
cursor: pointer; cursor: hand;
Erstere Angabe führt in standardkonformen Browsern dazu, dass der richtige Cursor gesetzt wird. Zweite Angabe wird von standardkonformen Browsern ignoriert, da »hand« kein gültiger Wert für die »pointer«-Eigenschaft ist. Der IE versteht dagegen »pointer« nicht, deswegen nutzt er die zweite Angabe.
Beispiel:
http://www.christian-seiler.de/temp/test-cursor.html
Geht in allen von mir getesteten Browsern.
Irgendwie scheint sich's in letzter Zeit eingebürgert zu haben, dass man bei Browserinkompabilitäten gleich zu CSS-Hack oder CC greift. Da denkt keiner mehr an die "guten alten Tricks", die noch verwendet wurden, bevor sich CSS Layouts durchgesetzt haben.
Viele Grüße,
Christian
Der IE versteht dagegen »pointer« nicht, deswegen nutzt er die zweite Angabe.
Der IE versteht pointer, laut selfhtml ab Version 5.5
Struppi.
Hallo Struppi,
Der IE versteht dagegen »pointer« nicht, deswegen nutzt er die zweite Angabe.
Der IE versteht pointer, laut selfhtml ab Version 5.5
Ja ok, dann eben alte IE-Versionen, whatever. ;-)
Viele Grüße,
Christian
Hi,
Der IE versteht pointer, laut selfhtml ab Version 5.5
IIRC ab IE 6. Hab's jetzt aber nicht nochmal überprüft ...
Gruß, Cybaer
Hallo
Das ist hier _absolut_ unnötig. ... Folgende Angabe reicht *völlig* aus:
cursor: pointer; cursor: hand;
Kurz und schmerzlos.
Irgendwie scheint sich's in letzter Zeit eingebürgert zu haben, dass man bei Browserinkompabilitäten gleich zu CSS-Hack oder CC greift. Da denkt keiner mehr an die "guten alten Tricks", die noch verwendet wurden, bevor sich CSS Layouts durchgesetzt haben.
2002, das ist solange her, das weiß schon keiner mehr. Mir war es jedenfalls unbekannt.
Tschö, Auge
Hi,
2002, das ist solange her, das weiß schon keiner mehr. Mir war es jedenfalls unbekannt.
Tststs, ich hätte bei Bedarf noch die JS-Version beizusteuern. ;) (Die ist nicht ganz so trivial.)
Gruß, Cybaer
Hallo
2002, das ist solange her, das weiß schon keiner mehr. Mir war es jedenfalls unbekannt.
Tststs, ich hätte bei Bedarf noch die JS-Version beizusteuern. ;) (Die ist nicht ganz so trivial.)
... Aber doch hoffentlich mindestens genauso alt. Alles andere wäre nicht stilecht.
;-)
Tschö, Auge
Hi,
... Aber doch hoffentlich mindestens genauso alt. Alles andere wäre nicht stilecht.
;-)
Aber hallo! Damals kannte ich noch nicht mal Conditional Compilation! :->
Gruß, Cybaer
... Aber doch hoffentlich mindestens genauso alt. Alles andere wäre nicht stilecht.
;-)Aber hallo! Damals kannte ich noch nicht mal Conditional Compilation! :->
// IE 5.0 // Netscape 6.0
document.all ? "pointer" : "hand"
Mathias
Hi,
// IE 5.0 // Netscape 6.0
document.all ? "pointer" : "hand"
Faschingsscherz? Helau! ;-)
1. "pointer" ist offiziell, "hand" IE<6 - nicht andersrum.
2. Es gibt standardkonforme Browser, die logischerweise "pointer" haben möchten, aber document.all dennoch unterstützen. *Du* müßtest doch eigentlich wissen, daß Browserweichen nur basierend auf document.all Tabu sind.
3. Ich vermeide Browserweichen prinzipiell, wo es nur eben geht!
Ohne Browserweiche kann es so aussehen:
with(obj.style) { cursor='hand'; if(cursor!='hand') { cursor='pointer'; }}
(Wenn man dem alten IE mit "pointer" kommt, gibt's aua - deswegen "hand" zuerst.)
Gruß, Cybaer
Hallo,
- "pointer" ist offiziell, "hand" IE<6 - nicht andersrum.
Ups, ja, sollte anders herum. War nur ein Scherz, eine stilechte alte Browserweiche, weil ihr gerade davon spracht.
Mathias
Hi,
Ups, ja, sollte anders herum. War nur ein Scherz, eine stilechte alte Browserweiche, weil ihr gerade davon spracht.
Ne, wat bisse 'ne fiese Möpp! ;-)
Ich werde nie vergessen, wie ich das erste Mal eine Website für einen Kunden abnehmen sollte, und die beauftragte Werbeagentur mit "wir machen jetzt auch Internetauftritte" mit einer Browserweiche ankam, und allen Seiten doppelt hatte: Einmal IE, einmal Netscape. Auf die passende Version wurde dann von der Startseite aus weitergeleitet (ich glaube aber, sie haben sich damals am UA-String orientiert). =:->
Mal vom schon damals haarsträubenden Prinzip abgesehen: Das "Problem", das sie mit der Weiche lösen wollten, war natürlich gar keines ... =X-)
Gruß, Cybaer
Hallo,
Das "Problem", das sie mit der Weiche lösen wollten, war natürlich gar keines ... =X-)
Tja, solche Nicht-Probleme hatte ich zum Glück gar nicht, ich habe einfach immer für den IE optimiert, wodurch ich viel Nicht-Zeit sparen konnte.
Mathias
Hi,
Tja, solche Nicht-Probleme hatte ich zum Glück gar nicht, ich habe einfach immer für den IE optimiert, wodurch ich viel Nicht-Zeit sparen konnte.
Höre ich da im Hintergrund deine Mutter rufen: "Wer hätte das gedacht, das aus dem Jungen nochmal was wird!"? ;)
Gruß, Cybaer
Hallo
Ich werde nie vergessen, wie ich das erste Mal eine Website für einen Kunden abnehmen sollte, und die beauftragte Werbeagentur mit "wir machen jetzt auch Internetauftritte" mit einer Browserweiche ankam, und allen Seiten doppelt hatte: Einmal IE, einmal Netscape. Auf die passende Version wurde dann von der Startseite aus weitergeleitet (ich glaube aber, sie haben sich damals am UA-String orientiert). =:->
Was denn nu? Keine Abfrage der Bildschirmauflösung incl. weiterer Versionen für die entsprechenden Größen? Schwach, wirlich schwach! ;-)
Schön, dass man heute darüber lachen kann.
Tschö, Auge
Hallo,
2002, das ist solange her, das weiß schon keiner mehr.
Ich hab's mal als Ticket eingetragen, damit das in der nächsten SELFHTML-Version beschrieben wird, dann fangen es die Leute eventuell wieder an, zu wisssen. ;-)
Viele Grüße,
Christian
Hallo
2002, das ist solange her, das weiß schon keiner mehr.
Ich hab's mal als Ticket eingetragen, damit das in der nächsten SELFHTML-Version beschrieben wird, dann fangen es die Leute eventuell wieder an, zu wisssen. ;-)
Und wenn es dann (mit dem nächsten SELFHTML-Release) soweit ist, benutzt niemand mehr MSIE <= 5.5, für die genau diese Notation wirkungsvoll ist. ;-)
Wobei das -in der freien Wildbahn[1]- ja durchaus wünschenswert wäre.
[1] In irgendwelchen Intranets kann man ja machen, was man will.
Tschö, Auge
Hi,
Und wenn es dann (mit dem nächsten SELFHTML-Release) soweit ist, benutzt niemand mehr MSIE <= 5.5, für die genau diese Notation wirkungsvoll ist. ;-)
Also die Wette halte ich. :-)
Gruß, Cybaer
[latex]Moin![/latex]
Und wenn es dann (mit dem nächsten SELFHTML-Release) soweit ist, benutzt niemand mehr MSIE <= 5.5, für die genau diese Notation wirkungsvoll ist. ;-)
Also die Wette halte ich. :-)
Halt' Martin da raus ;)
Cü,
Kai
Hallo,
Irgendwie scheint sich's in letzter Zeit eingebürgert zu haben, dass man bei Browserinkompabilitäten gleich zu CSS-Hack oder CC greift. Da denkt keiner mehr an die "guten alten Tricks",
CSS-Hacks oder CCs haben doch auch klare Vorteile.
* html #muster { cursor: hand; }
ersetzt den Kommentar, es wird gleich
deutlich, dass hier eine IE-Extrawurst gebraten wird. Eine einheitliche
Behandlung aller solcher Ergänzungen erleichtert die Pflege des CSS-Code.
Ausserdem reduziert es das Rest-Risiko, dass irgendein Browser mit dem betr.
Code doch nicht klarkommt, Beispiele für ähnliche Probleme gibt es ja.
CCs schließlich isolieren die Extrageschichten, andere Browser müssen den
Code nicht laden, irgendwann kann der betr. Code komplett entsorgt werden
und der übrige Code bleibt sauber.
Selbst beim hier diskutierten Problem mit der einfachen Lösung ist die
Verwendung von CSS-Hacks oder CCs also nicht widerlegt oder unnötig, auch
wenn es anders geht.
Grüsse
Cyx23
Hallo Cyx23,
Selbst beim hier diskutierten Problem mit der einfachen Lösung ist die
Verwendung von CSS-Hacks oder CCs also nicht widerlegt oder unnötig, auch
wenn es anders geht.
Ich will ja nicht pauschal etwas gegen CCs oder Hacks sagen. Mir ging's nur drum, dass man gut und gerne auf sowas verzichten kann, wenn's auch einfacher geht.
Und naja, an einer Doppel-Angabe cursor: pointer; cursor: hand; erkenne ich IMHO auch sofort, dass das ne IE-Extrawurst ist (sonst würde ich sowas ja nicht doppelt angeben).
Viele Grüße,
Christian
Hallo Christian,
Und naja, an einer Doppel-Angabe cursor: pointer; cursor: hand; erkenne ich IMHO auch sofort, dass das ne IE-Extrawurst ist (sonst würde ich sowas ja nicht doppelt angeben).
Nach dem ausführlichen Thread kann ich es mir sicherlich auch gut merken, aber
vielleicht können ja dennoch die 5er IEs in absehbarer Zeit ignoriert werden.
Den 5.0 habe ich bei einem eigenen Projekt schon vom CSS ausgeschlossen, auch
wenn er laut "webhits.de" noch mit über 1% vertreten sein soll.
Grüsse
Cyx23
@@Cyx23:
Nach dem ausführlichen Thread kann ich es mir sicherlich auch gut merken, aber
ansonsten gibt es ja auch Kommentare in CSS:
foo
{
cursor: pointer;
cursor: hand; /* für IE */
}
Live long and prosper,
Gunnar
Yerf!
foo
{
cursor: pointer;
cursor: hand; /* für IE */
}
Damit wär ich vorsichtig...
ein
~~~css
/*für IE*/
foo
{
cursor: hand;
}
eignet sich zumindest wunderbar dafür, dass der IE die Angabe ignoriert...
Keine Ahnung, welche Probleme der IE6 mit Umlauten in Kommentaren hat, aber zumindest bei JS-Kommentaren hab ich im Script-Debugger schon die tatsächliche Auswirkung gesehen: Ab dem Umlaut werden ein paar der Folgezeichen verschluckt, was auch den Zeilenumbruch mitnehmen kann, wodurch die Folgezeile dann zum Kommentar dazugehört...
Gruß,
Harlequin
Hi,
Nur: Firefox meldet zusätzlich in der Fehlerkonsole: "Warnung: Fehler beim Verarbeiten des Wertes für Eigenschaft 'cursor'. Deklaration ignoriert." Was meint der Kumpel denn damit?
Das haettest gerade du als Stammposter nu' aber wirklich mal selber in SELFHTML nachlesen koennen ...
MfG ChrisB
Guten Morgen,
input {border: none;
font-size: 0.9em;
background: #FFF;
padding: 0 4px 0 4px;
margin-bottom: -1px;
cursor: hand;}
Das kann nicht gehen. Es muss 'cursor: Kralle' notiert werden.
Viele Grüße,
Horst Haselhuhn