Quirks మోడ్ లో DOCTYPE ఎలిమెంట్ ఉపయోగించి

క్విర్క్స్ మోడ్ లోకి బ్రౌజర్లను ఉంచడానికి Doctype ను వదిలేయండి

మీరు కొన్ని నెలలు కన్నా ఎక్కువ వెబ్ పేజీలను రూపకల్పన చేస్తుంటే , అన్ని బ్రౌజరులలో ఒకే విధంగా కనిపించే ఒక పేజీని వ్రాయడం కష్టంగా ఉంటుంది. వాస్తవానికి, ఇది అసాధ్యం. అనేక బ్రౌజర్లు మాత్రమే వారు నిర్వహించడానికి అని ప్రత్యేక లక్షణాలు రాశారు. లేదా ఇతర బ్రౌజర్లు వాటిని ఎలా నిర్వహిస్తాయో వేర్వేరు విషయాలను నిర్వహించటానికి ప్రత్యేకమైన మార్గాలు ఉన్నాయి. ఉదాహరణకి:

బ్రౌజర్ డెవలపర్లు కోసం సమస్య వారు పాత బ్రౌజర్లలో కోసం నిర్మించిన వెబ్ పేజీలను వెనుకకు అనుకూలంగా ఉంటాయి వెబ్ బ్రౌజర్లు సృష్టించడానికి కలిగి ఉంది. ఈ సమస్యను ఎదుర్కోవటానికి, బ్రౌజర్ మేకర్స్ పనిచేయడానికి బ్రౌజర్ల కోసం రీతులను సృష్టించారు. ఈ రీతులు DOCTYPE మూలకం యొక్క ఉనికి లేదా లేకపోవడంతో మరియు DOCTYPE కాల్స్ ద్వారా నిర్వచించబడతాయి.

DOCTYPE స్విచ్చింగ్ మరియు "క్విర్క్స్ మోడ్"

మీరు మీ వెబ్ పేజీలో క్రింది DOCTYPE ను ఉంచుకుంటే:

ఆధునిక బ్రౌజర్లలో (Android 1+, Chrome 1+, IE 6+, iOS 1+, Firefox 1+, Netscape 6+, Opera 6+, సఫారి 1+) ఈ క్రింది పద్ధతిలో దీనిని అర్థం చేసుకోగలవు:

  1. సరిగ్గా వ్రాసిన DOCTYPE ఉన్నందున, ఇది స్టాండర్డ్స్ మోడ్ను ప్రారంభిస్తుంది.
  2. ఇది HTML 4.01 పరివర్తన పత్రం
  3. ఇది ప్రమాణాల రీతిలో ఉన్నందున, చాలా బ్రౌజర్లు HTML 4.01 పరివర్తనతో కంటెంట్ కంప్లైంట్ (లేదా ఎక్కువగా కంప్లైంట్) ను అందిస్తాయి

మరియు మీరు మీ పత్రంలో ఈ DOCTYPE ను ఉంచినట్లయితే:

ఇది మీ HTML 4.01 పేజీని DTD తో కచ్చితమైన సమ్మతితో ప్రదర్శించాలని కోరుకుంటున్న ఆధునిక బ్రౌజర్లను చెబుతుంది.

ఈ బ్రౌజర్లు "కఠినమైన" లేదా "ప్రమాణాలు" మోడ్లోకి వెళ్తాయి మరియు ప్రమాణాలతో అనుగుణంగా పేజీని అందించబడతాయి. (కాబట్టి, ఈ పత్రం కోసం, FONT ఎలిమెంట్ను HTML 4.01 కఠినమైనదిగా నిలిపివేసినందున వంటి ట్యాగ్లు బ్రౌజర్ పూర్తిగా విస్మరించబడవచ్చు.)

మీరు DOCTYPE ను పూర్తిగా వదిలేస్తే, బ్రౌజర్లు స్వయంచాలకంగా "అసాధరణ" మోడ్లోకి తీసుకోబడతాయి.

దిగువ పట్టిక వివిధ సాధారణ DOCTYPE డిక్లరేషన్లతో అందించినప్పుడు సాధారణ బ్రౌజర్లు ఏమి చేయాలో చూపుతుంది.

మైక్రోసాఫ్ట్ ఇది కష్టతరం చేస్తుంది

ఇంటర్నెట్ ఎక్స్ప్లోరర్ 6 కూడా లక్షణాన్ని కలిగి ఉంది, మీరు DOCTYPE డిక్లరేషన్ పైన ఏదైనా ఉంచినట్లయితే, వారు అసాధరణ రీతిలో వెళ్తారు. కాబట్టి, ఈ రెండు ఉదాహరణలు IE 6 ను అసాధరణ మోడ్ లోకి ప్రవేశపెడతాయి, అయినప్పటికీ DOCTYPE డిక్లరేషన్లు ఖచ్చితమైన ప్రమాణ పద్ధతిలో ఉంటుందని చెప్పాయి:

మరియు XHTML 1.1 DOCTYPE:

ప్లస్, మీరు IE6 గత ఉంటే, అప్పుడు మీరు మైక్రోసాఫ్ట్ IE8 మరియు IE9 లో జోడించారు "ఫీచర్" కలిగి: META మూలకం మార్పిడి మరియు వెబ్సైట్ బ్లాక్లిస్టింగ్. నిజానికి, ఈ రెండు బ్రౌజర్ సంస్కరణలు ఇప్పుడు ఏడు (!) వేర్వేరు రీతులను కలిగి ఉన్నాయి:

IE 8 కూడా "అనుకూలత మోడ్" ను పరిచయం చేసింది, దీనిలో వినియోగదారుని రీడరింగ్ మోడల్ను IE 7 మోడ్కు మార్చడానికి ఎంచుకోవచ్చు. కాబట్టి మీరు DOCTYPE మరియు META రెండింటినీ ఉపయోగించి అమర్చాలనుకున్న మోడ్ను అమర్చినప్పటికీ, మీ పేజీ ఇప్పటికీ తక్కువ ప్రమాణాలు-కంప్లైంట్ రీతిలోకి తిరిగి పంపబడుతుంది.

క్విర్క్స్ మోడ్ అంటే ఏమిటి?

క్విర్క్స్ మోడ్ అన్ని వినూత్న రెండరింగ్ మరియు అప్రమాణిక బ్రౌజర్ మద్దతుతో వ్యవహరించడంలో సహాయపడింది మరియు వెబ్ డిజైనర్లు ఆ విషయాలను పరిష్కరించేందుకు ఉపయోగించే హక్స్. బ్రౌజర్ తయారీదారులు కలిగి ఉన్న ఆందోళన ఏమిటంటే వారు తమ బ్రౌజర్లు పూర్తి స్పెసిఫికేషన్ సమ్మతికి మార్చినట్లయితే, వెబ్ డిజైనర్లు వెనుకబడతారు.

DOCTYPE స్విచింగ్ మరియు "క్విర్క్స్ మోడ్" ను ఏర్పాటు చేయడం ద్వారా ఈ వెబ్ డిజైనర్లు బ్రౌజర్లు వారి HTML ను రెండర్ చెయ్యడానికి కోరుకుంటున్నారో ఎంచుకోవడానికి వీలు కల్పించారు.

క్విర్క్స్ మోడ్ ఎఫెక్ట్స్

చాలా బ్రౌజర్లు క్విర్క్స్ మోడ్లో ఉపయోగించే పలు ప్రభావాలు ఉన్నాయి:

"దాదాపు స్టాండర్డ్స్ మోడ్:" లో తేడా కూడా ఉన్నాయి.

ఎలా ఒక DOCTYPE ఎంచుకోండి

నేను నా వ్యాసంలో DOCTYPE జాబితాలో మరింత వివరంగా వెల్లడించాను, కాని ఇక్కడ కొన్ని సాధారణ నియమాలు ఉన్నాయి:

  1. ఎల్లప్పుడూ ప్రమాణాల మోడ్ను ఎల్లప్పుడూ ఎంచుకోండి. మీరు ఉపయోగించిన ప్రస్తుత ప్రమాణం HTML5:
    మీరు HTML5 DOCTYPE ను ఉపయోగించకుండా ఉండటానికి ఒక ప్రత్యేక కారణం తప్ప, మీరు ఉపయోగించుకోవాలి.
  2. మీరు లెగసీ మూలకాలకు ధ్రువీకరించాలి లేదా కొన్ని కారణాల కోసం క్రొత్త లక్షణాలను నివారించాలని కోరుకుంటే కఠిన HTML 4.01 కు వెళ్లండి:
  3. మీరు ఒక పట్టికలో చిత్రాలను ముక్కలుగా చేసి, వాటిని పరిష్కరించాలనుకుంటే, పరివర్తన HTML 4.01 కి వెళ్లండి:
  4. పేజీలను ఉద్దేశపూర్వకంగా అసాధరణ రీతిలో వ్రాయవద్దు. ఎల్లప్పుడూ DOCTYPE ను ఉపయోగించండి. భవిష్యత్తులో మీరు అభివృద్ధి సమయం లో ఈ సేవ్ చేస్తుంది, మరియు నిజంగా ప్రయోజనం లేదు. IE6 వేగంగా ప్రజాదరణ కోల్పోతోంది మరియు ఈ బ్రౌజర్ కోసం రూపకల్పన చేయడం ద్వారా (ఇది అసాధరణ మోడ్లో రూపకల్పన చేయడమే ప్రధానమైనది) మీరు మీరే, మీ పాఠకులు మరియు మీ పేజీలను పరిమితం చేస్తున్నారు. మీరు IE 6 లేదా 7 కొరకు వ్రాయవలసి వస్తే, ఆధునిక బ్రౌజర్లను అసాధరణ రీతికి బలవంతం చేయకుండా, వారికి మద్దతు ఇవ్వడానికి నియత వ్యాఖ్యలను ఉపయోగించండి.

ఎందుకు DOCTYPE ఉపయోగించండి

ఒకసారి మీరు ఈ రకమైన DOCTYPE స్విచింగ్ను గురించి తెలుసుకున్న తర్వాత, మీరు మీ వెబ్ పేజీలను మరింత సులభంగా ప్రభావితం చేయవచ్చు, ఇది DOCTYPE ను ఉపయోగించి మీ బ్రౌజరు నుండి మీ బ్రౌజరు ఆశించినదానిని సూచిస్తుంది. కూడా, ఒకసారి మీరు DOCTYPE ను ఉపయోగించడం మొదలుపెడితే, మీరు చెల్లుబాటు అయ్యే HTML ను రాయడం చేస్తారు (మీరు దీనిని ధృవీకరించాలి). మరియు చెల్లుబాటు అయ్యే XHTML రాయడం ద్వారా, మీరు ప్రమాణాల కంప్లైంట్ బ్రౌజర్లు నిర్మించడానికి బ్రౌజర్ మేకర్స్ ప్రోత్సహిస్తున్నాము.

బ్రౌజర్ సంస్కరణలు మరియు క్విర్క్స్ మోడ్

DOCTYPE Android
Chrome
ఫైర్ఫాక్స్
IE 8+
iOS
Opera 7.5+
సఫారి
IE 6
IE 7
Opera 7
నెట్స్కేప్ 6
గమనిక క్విర్క్స్ మోడ్ క్విర్క్స్ మోడ్ క్విర్క్స్ మోడ్
HTML 3.2
క్విర్క్స్ మోడ్ క్విర్క్స్ మోడ్ క్విర్క్స్ మోడ్
HTML 4.01
పరివర్తన స్టాండర్డ్స్ మోడ్ * స్టాండర్డ్స్ మోడ్ * స్టాండర్డ్స్ మోడ్
పరివర్తన క్విర్క్స్ మోడ్ క్విర్క్స్ మోడ్ క్విర్క్స్ మోడ్
కఠినమైన స్టాండర్డ్స్ మోడ్ స్టాండర్డ్స్ మోడ్ * స్టాండర్డ్స్ మోడ్
కఠినమైన స్టాండర్డ్స్ మోడ్ స్టాండర్డ్స్ మోడ్ * స్టాండర్డ్స్ మోడ్
HTML5
స్టాండర్డ్స్ మోడ్ స్టాండర్డ్స్ మోడ్ * క్విర్క్స్ మోడ్
* ఈ DOCTYPE తో, బ్రౌజర్లు ప్రమాణాల కంప్లైంట్కు దగ్గరగా ఉంటాయి, కానీ కొన్ని సమస్యలు ఉన్నాయి-పరీక్షించాలో ఖచ్చితంగా. దీనిని "దాదాపు స్టాండర్డ్స్ మోడ్" అని కూడా పిలుస్తారు.