2011 18 februar 2011
Hadde dette merkelige problemet, hvor et stykke Javascript fungerte fint i alle nettleserens ans som vanlig bar IE
Enkelt ... det var, men siden manus ikke ble skrevet av meg, tok det en stund å feilsøke denne "Objektet støtter ikke denne egenskapen eller metoden" feil at bare IE ble kastet opp. Sannsynligvis! Hvis jeg skulle skrive manuset, ville jeg ikke ha fått denne feilen i det hele tatt, så ikke bland mine variabelnavn med felt Ids :).
Problem: Objektet støtter ikke denne egenskapen eller metoden (på linje 3)
function funzoneSP(){ document.getElementById('video_id').style.visibility="hidden"; shortdesc = document.getElementById('shortdesc').value; .... }
Løsning:
Feilen er generert på thirdrow i eksempelet ovenfor (Linje 3 ... "shortdesc = document.getE ...."). Jeg prøvde alle slags dumme ting, at jeg ikke egentlig var verdt omtale her og endelig gjett hva! bare endre shortdesc Var til noe annet ble kvitt feilen. Utgangspunktet! Variabelnavnet måtte forskjellig fra fieldID
1 kommentar | Tags: NO Reparerer | postet i nettleser quirks , JavasScript
2009 7 november 2009
Tid og om igjen, når alle de andre nettleserne sett å oppføre seg som sagt av W3C reglene, dvs. spiraler deg ut av utviklingen ånd ved å kaste et raserianfall, som ikke synes å ha en fix. Bare en slik en er dette problemet i IE7.
Problem Statement:
Jeg og så kunne mange av de andre alvorlige webutviklere har lagt merke til mer enn mange ganger, at når det nestet flyter i oppsettet, på svever over noen linker (ankerkoder), synes inneholder beholderen til å skifte noen få piksler til høyre . Jeg har prøvd å google løsninger for dette problemet, men har neppe funnet noen fornuftig svar på hvorfor og når det skjer (som kan bidra til å forebygge dette problemet skjer), derav jeg aldri har funnet en klar løsning på problemet heller ...
Mulig løsning:
Ut av erfaring, har jeg beskjed 90% prosent av den tiden det vil si, at dette problemet er løst ved å legge en zoom eiendom i CSS definisjonen av mis-oppføre container ...
# Somediv {
zoom: 1;
}
igjen grunnene er tvetydige ... prøv denne ...
Enkelte elementer i IE har en "hasLayout" eiendom, som er "sant" som standard. Mange visuelle CSS atferd, for eksempel, fungerer en alpha filter bare på ett element som hasLayout. og {Zoom: 1} synes å gi målet elementene den hasLayout eiendommen .... Nyttig? Jeg tror ikke det ...
Zoomen eiendommen synes også å støttes av Chrome, men bruken dint synes å gjøre mye negativ effekt på layout min ... prøv det, hvis det fungerer for deg ... hvis den ikke gjør det, bokmerke denne siden under "CSS craps"
2 kommentarer | Tags: NO Reparerer og IE problemer og IE7 | postet i CSS
2008 10 oktober 2008
CSS for Non-IE Nettlesere: Dens ingen nyheter å CSS utviklere som, CSS barn velgere som i eksempelet nedenfor, ikke synes å fungere i IE.
f.eks div> span {noen css}, som betyr "når en span element er et barn (og ikke et barnebarn eller stor grand barn osv.) av en divisjon element".
Men vi brukte denne CON til vår fordel. Historisk har barnet velgeren blitt brukt til å skjule CSS kommandoer fra IE. Bare ved å plassere html>body foran CSS kommando IE vil ignorere det:
html>body .foo { CSS commands go here ;}
Dette fungerer fordi <body> er alltid et barn av <html> - det kan selvsagt aldri være et barnebarn eller oldebarn av <html> .
Nå som IE 7 forstår barnet velgeren, må du sette inn en tom kommentar tag i rett etter større enn-tegn IE 7 vil da ikke forstå denne velgeren (som vet hvorfor?) Og vil derfor helt ignorere denne CSS kommandoen.:
html> /**/ body .foo { CSS commands go here ;}
Dersom ikke allerede har sett disse før, har en lese gjennom følgende tillegg
kommentarer | Tags: IE bugs og IE Reparerer og IE Hacks og IE problemer | Skrevet i nettleseren quirks og CSS
2008 4 oktober 2008
Som vanlig, en av de mange noen merkelige problemer med IE og dette må man rangerer i TOP 10 av IE quirks.
Problemstillingen (Dette var mitt problem, kanskje du har lignende dårlig oppførsel):
Jeg har mange DIV står i siden med klassen "sectionhead", som er ingenting, men tittelen på et avsnitt på siden. Så jeg har litt stil ser slik ut
. Sectionhead {font-size: 18px; bakgrunn: # cfcfcf; padding: 5px;}
Det div er en lys grå bar med litt svart tekst. Hva skjer i IE er noen av disse § hoder vises ok, men noen er usynlig, INNTIL, du bla på siden eller klikker på noe på siden osv. Noen ganger har de en tendens til å forsvinne når du klikker på "alt"-tasten når du side ned eller bla med rullefeltet. De noen ganger synes å dukke opp igjen når du har lastet (F5) siden. Jeg kort en perfekt enkel DIV med noen enkle stil oppfører BAD.
Hva kunne forårsake en slik uberegnelig oppførsel? Vel! Oppriktig, NO IDEA!
MULIG LØSNING:
Igjen ikke spør meg hvorfor, men i mange tilfeller dette problemet en tendens til å forsvinne når du legger posisjon: i forhold til mis oppføre elementene stil, som dette
. Sectionhead {font-size: 18px; bakgrunn: # cfcfcf; padding: 5px; stilling: relative}
Merkelig, men hva du skal si? God Bless meg fra IE!
OG GJØRE AKSJE MED OSS, hvis du hadde lignende problemer.
kommentarer | Tags: IE bugs og IE Reparerer og IE Hacks og IE problemer | Skrevet i nettleseren quirks og CSS og HTML
2008 15 juli 2008
Oh well! I tidligere innlegg noen dager tilbake om Opacity i IE8, glemte jeg å nevne et viktig poeng at "IE 8 streng modus ikke tillater CSS opacity".
For de som donot forstår hva jeg mener med streng modus, her er rask tutorial .
Et arbeid rundt dette (Før IE dev teamet innser at de har banet vei for ny arbeidsrutiner over hele verden, for web-sider ved hjelp av POP-up lysbokser med noen opasitet, og satt tilbake støtte for Opacity) er å bruke en semi gjennomsiktig bilde ... fortrinnsvis i PNG-format (jeg har hatt dårlig erfaring får gjennomsiktige GIF-bilder til å arbeide som de skulle). Lag en PNG-bilde av fargen og prosentandelen av gjennomsiktighet du liker, i deg favoritt bilde editor og bruke det som bakgrunnsbilde for lysboks overlegg.
dvs.
I stedet for noe som dette
. Lighbox_overlay {
background-color: # FFFFFF;
z-index: 1001;
-Moz-opacity: 0.6;
opacity: 0,60;
filter: alpha (opacity = 60);
}
Gjør dette ....
. Lighbox_overlay {
bakgrunn: url (bkg.png) gjenta;
}
Å prøve det, KLIKK HER! | Å LASTE NED, KLIKK HER!
kommentarer | Tags: IE bugs og IE Reparerer og IE problemer og IE8 | Skrevet i nettleser quirks , CSS
2008 20 juni 2008
Hvis du noensinne har gjort (eller lage en) en vertikal meny med listeelementer (Li) tagger og CSS, kan det oppstå, dette enda en feil i Internet Explorer, hvor IE 6 inserts disse gapene mellom listeelementer som inneholder block-nivå elementer, dvs. hvis det er noen mellomrom mellom listeelementene i markeringen. Takk, men ingen takk, synes IE versjon 7 fri fra denne feilen.
Hvis som meg, og mange flere, tilhører du til dette bandet av frustrerte utviklere, som fortsatt har for å få sine nye oppsett, som arbeider i IE6 også, så dette kan vise seg nyttig. Ta en titt ...
Eksempel markering:
<ul id="menu">
<li> <a href="#"> Hjem </ a> </ li>
<li> <a href="#"> Om </ a> </ li>
<li> <a href="#"> Services </ a> </ li>
<li> <a href="#"> portefølje </ a> </ li>
<li> <a href="#"> FAQ </ a> </ li>
<li> <a href="#"> Kontakt oss </ a> </ li>
</ Ul>
Du kan skape litt CSS, lik en nedenfor, for å transfrom ovenfor markup i en vertikal meny ....
Eksempel CSS ...
# Meny {
margin: 0; padding: 0; bakgrunn: # FF9900;
list-style-type: none; width: 150px;
}
# Meny li {margin: 0; padding: 0;}
# Meny a {display: block;
color: # 555555;
text-decoration: none;
padding: 0 15px;
line-høyde: 2,5; border-bottom: 1px solid # FFF;
}
Resultatene vil du se ...
Løsning for denne feilen ... (modifisert / lagt CSS i fet kursiv)
# Meny {
margin: 0; padding: 0; bakgrunn: # FF9900; list-style-type: none; width: 150px;
float: left; / * dette inneholder fløt listeelementer * /
}
# Meny li {
margin: 0; padding: 0;
float: left; / * Dette løser * /
width: 100%; / * whitespace bug i IE6 * /
}
# Meny a {
display: block; color: # 555555;
text-decoration: none;
padding: 0 15px;
line-høyde: 2,5; border-bottom: 1px solid # FFF;
}
Hvis ovenstående løsningen doesnot synes å fungere (for grunner kjente til IE6 bare) ... prøve denne metoden i stedet
Bare legg denne ekstra IE6 bare stiler til markup din ...
<- [If lt IE 7>
<style type="text/css">
# Meny li a {display: inline-block;}
# Meny li a {display: block;}
</ Style>
<[Endif] ->
kommentarer | Tags: IE bugs og IE Reparerer og IE Hacks og IE problemer og IE6 og Tutorials | Skrevet i nettleser quirks , CSS
2008 12 april 2008
Innlegg IE 6, har MSIE vært snill nok til oss UI utviklere ved å legge noen flere CSS egenskaper standard til de fleste andre vanlige nettlesere. Et slikt nyttig eiendom i "min-height". Ganske rett frem eiendom som ikke trenger lang omstendelig forklaring. Når en min-høyde for en divisjon er satt, er det alltid beholder det settet høyden når innholdet huser opptar mindre enn den kan holde og viktigere (i motsetning til vanlig vanilla "høyde" eiendom) vekter eller i CSS ord, oppfører den som en divisjon som "høyde" er satt til "auto" ...
For noen av oss fattige utviklere, som fortsatt er nødvendig å kode CSS som også må jobbe i IE6, kunne un-tilgjengeligheten av "min-height", bevise en show stopper en gang ... donot fortvilelse.
Heldigvis har vi nok quirks i IE, at vi ville bruke til å ut nytte og hacke vår vei gjennom for å nå vårt mål ... dvs lage en DIVISION divisjon som om det min-høyden i IE6
Løsning 1: Bruk understrekingstegnet Hack [ ... Les mer ]
.box1 {
min-height: 200px;
height:auto;
_height:200px;
}
HTML: -
<div class="box1">Some dynamic content with variable height ...</div>
Løsning 2: Bruke CSS Attributt Selector Hack
.box2 {
min-height:200px;
height:200px;
}
div[class] .box2 {
height:auto;
}
HTML: -
<div class="someclass">
<div class="box2 common">Some dynamic content with variable height ...</div>
</div>
CSS attributtvelger Hack utnytter det faktum at nettlesere tidligere tha IE6 ignorert en atribute-velgeren. Legg merke til kravet om en annen container divisjon med class = "someclass". Bare tilstedeværelse av klassen attributtet for denne divisjonen, overstyrer høyden tilbake til auto for Opera, Mozilla og MSIE7 og senere. IE6, som ikke støtter atribute velgere, ignorerer den.
Se demo av min høyde hack for IE6
kommentarer | Tags: IE bugs og IE Reparerer og IE Hacks og IE problemer og IE6 og Tutorials | Skrevet i CSS
2008 15 mars 2008
Ved flere anledninger, mens de gjør sidelayouter med popup divisjoner / lysbokser / Tips osv. Vi kommer over situasjoner der noen form SELECT objekter skjer for å være under disse POPUP Divisjoner, ved design og det viser gjennom .... YUK!
Vel! du kan enkelt fikse dette ved å justere dine Z-indeksverdiene hensiktsmessig for FF og IE7. Men Good Old (pun intended) IE6 ikke oppfører seg som forutsatt .... SELECT BOX vises gjennom, selv etter at du har brukt noen drastisk høy Z-indeksverdiene til PopUp divisjon ... nei!!
Det finnes INGEN fikser for dette problemet, men det er, tror jeg, mer enn noen måte å jobbe-rundt dette problemet, men im her for å fortelle deg den enkleste løsningen som jeg bruker, som fungerer fint for meg, i det meste av saker ....
"HIDE THE ROUGE SELECT BOX når du viser POPUP"
Bare i skriptet tekstutdraget hvor du vise popup, legg et stykke skript for å sette synligheten av SELECT Box til "Hidden"
document.getElementById ('my_select') style.visibilty = "skjult".;
Og husk å sette den tilbake på LUKK av PopUp Division
. document.getElementById ('my_select') style.visibilty = "synlig";
der "my_select" er IDen til irritasjon SELECT Box
Håper dette hjelper ...
PS. Det finnes selvsagt andre alternativer som dynamisk positionining en IFRAME (samme størrelse som du PopUp) under Popup DIV ... Dette fungerer godt også, men med et tillegg av laster på DOM Elements, skript og hodepine. Jeg har brukt denne løsningen også, og hvis du trenger hjelp med dette alternativet, la meg vite. Vil gjerne hjelpe!
ingen kommentarer | Tags: IE bugs og IE Reparerer og IE Hacks og IE problemer og IE6 | postet i nettleseren quirks og CSS og HTML , JavasScript
2008 8 januar 2008
Noen måneder tidligere vi så, hvordan vi kan inkludere et stykke CSS som vil være synlig for IE6 bare ( For din IES Only ). Det finnes andre måter å oppnå dette så godt. Bare ta med en egen CSS, i henhold til mål IE. Dette kan oppnås med det som kalles som Betingede kommentarer.
Betingede Kommentarer er en måte å oppdage type nettleser og versjon. Nettleser deteksjon er utført for å sikre at innholdet presenteres for leseren bestemt. Browser deteksjon kan gjøres ved hjelp av mange forskjellige teknikker. Denne metoden har flere fordeler fremfor tidligere metoder, som inkluderte stil svitsjing med javascript. For å liste viktig få, vil være;
- Scripting er ikke nødvendig
- Cross-nettleser
Hvordan gjør vi dette?
Gjør noe i IE 5 bare
<!--[if IE 5]> Welcome to Internet Explorer 5. <![endif]-->
Gjør noe i alle IE-versjoner
<!--[if IE]>
<link href="css/ie.css" rel="Stylesheet" type="text/css" />
<![endif]-->
Gjør noe i alle IE-versjoner nyere som IE 5
<!--[if gte IE 5]>
<script type="text/javascript"><!--
alert("Congratulations! You are running Internet Explorer 5 or greater.");<br />
// --></script>
<![endif]-->
For flere betingede vartiations, les denne info på MSDN:
Om Betinget Kommentar
kommentarer | Tags: IE bugs og IE Reparerer og IE Hacks og IE problemer | Skrevet i nettleseren quirks og CSS og HTML , JavasScript
2007 15 september 2007
Enkelt sett (for dem som aldri har hørt om doctype før i dag)! DOCTYPE er erklæringen i et HTML-dokument som kommer før det <HTML> koden, ser at noe som dette (limt inn fra kilden til denne meget side)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Hvorfor bruke DOCTYPE? Det hele begynte da nettleseren standarder ble introdusert av W3C. De tidligere webutviklere implementert CSS henhold til ønskene til nettlesere, for å ha sidene gjengis riktig på dem, og de fleste nettsteder hadde CSS som ikke helt matcher disse spesifikasjonene / standarder. Derfor løsning på dette problemet var å
- tillate webutviklere som kjente sine standarder å velge hvilken modus som skal brukes.
- fortsette med gamle sider i henhold til de gamle (quirks) regler.
Og DOCTYPE ble født.
Så, basert på om du side er utformet til standarder eller ikke, velger du riktig doctype.
Forholdet mellom Doctype & Browser moduser DOCTYPE er uttalelsen som forteller nettleseren hvilken modus den skal gjengi HTML-side i eller snarere å være mer presis hvordan bør leseren tolke CSS i, quirks-modus eller Strict modus. Gamle sider skrevet før disse standardene ble innført ikke har en DOCTYPE. Derfor når det ikke er DOCTYPE i HTML din da nettleseren er i quirks-modus.
Men hvis DOCTYPE er definert som ett av følgende, da nettleseren sies å være i streng modus.
<DOCTYPE html PUBLIC "- / / W3C / / DTD HTML 4.01 Transitional / / EN" "http://www.w3.org/TR/html4/loose.dtd">
kommentarer | Tags: Doctype og IE Reparerer og moduser | Skrevet i HTML , brukergrensesnitt Desgin