Kom ihåg mig?
Home Menu

Menu


croppa med css clip

Ämnesverktyg Visningsalternativ
Oläst 2009-03-05, 11:05 #1
martines avatar
martine martine är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Mar 2005
Inlägg: 767
martine martine är inte uppkopplad
Mycket flitig postare
martines avatar
 
Reg.datum: Mar 2005
Inlägg: 767
Jag använder css:s clip: rect(a b c d); för att klippa bort det som inte ska synas av en js-meny när den åker fram och tillbaks vilket fungerar fint. Nu vill jag dessutom skapa undermenyer och för att detta ska fungera måste jag återställa clip till att inte klippa (eftersom undermenyn annars bli avklippt). Detta fungerar finfint i Firefox med:
clip: auto;
vilket återställer klippningen och låter elementet fungera som vanligt. Detta är vad som ska användas enligt specifikationen i css. I Safari har jag upptäckt att auto inte ger önskat resultat - Safari tolkar det som att jag fortfarande vill klippa en rektangel, alltså motsvarar clip: rect(auto auto auto auto); vilket inte är detsamma som att låta klippningen skötas automatiskt som normalt för element. Detta måste vara en bugg i Safari misstänker jag. Hursomhelst går det att lösa med clip: inherit; vilket fungerar i Firefox och Safari (eftersom det föregående elementet inte har något clip).

Så långt så väl. I Explorer 7 däremot får jag bara felmeddelanden i js. Explorer accepterar varken auto (som enligt specifikationen vore det riktiga) eller inherit (som också är korrekt, men som bekant inte stöds av IE). För egen del tycker jag att värdet clip: none; vore det mest rimliga men det förekommer inte i specifikationen och fungerar alltså inte i standardwebbläsare.

Så frågan nu är: Hur bär man sig år för att få IE att återställa clip till "none"?
martine är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-03-05, 11:17 #2
allstars allstars är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Apr 2006
Inlägg: 2 126
allstars allstars är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Apr 2006
Inlägg: 2 126
Det kanske inte är svar på din fråga men du kan ju styra IE-specifika stilar med conditional comments.

Kod:
<!--[if IE]>
<style type="text/css">
.myStyle {clip:none;}
/* eller annan stil för att får det att fungera för just IE */
</style>
<![endif]-->
allstars är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-03-05, 17:29 #3
martines avatar
martine martine är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Mar 2005
Inlägg: 767
martine martine är inte uppkopplad
Mycket flitig postare
martines avatar
 
Reg.datum: Mar 2005
Inlägg: 767
Citat:
Originally posted by allstars@Mar 5 2009, 12:17
Det kanske inte är svar på din fråga men du kan ju styra IE-specifika stilar med conditional comments.
Jo, jag tackar. Conditional comments känner jag till. Problemet är bara att jag inte vet vad jag ska säga till Explorer för att få det att fungera:

clip: ?;

För övrigt, har jag nu åtminstone hittat en förklaring till Safaris implementering av auto:
Citat:
The default value of 'clip', 'auto', now indiciates no clipping rather than clipping to the element's border box.
enligt w3c, Safari följer alltså specifikationen för css 2 (vilket då var riktigt) och inte för css 2.1. Någon som vet om detta är rapporterat som en bugg eller om man kan göra detta?

PS2: Har för första gången hittat en länk som beskriver css clip på ett vettigt sätt:
http://www.ibloomstudios.com/articles/misu...stood_css_clip/
martine är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 00:48.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017