තවත් සමහරු "කෙසේද" යන්නට පිළිතුරු දී ඇති අතර පිරිවිතර උපුටා දක්වා ඇත. <script/>
දෝෂ වාර්තා සහ තැපැල් ලැයිස්තු හාරා පැය ගණනාවකට පසු "ඇයි නැත්තේ" පිළිබඳ ඇත්ත කතාව මෙන්න .
HTML 4
HTML 4 SGML මත පදනම් වේ .
මෙය SGML සමහර ඇත shorttags වැනි, <BR//
, <B>text</>
, <B/text/
, හෝ <OL<LI>item</LI</OL>
. XML පළමු ස්වරූපය ගනී, අවසානය ">" ලෙස නැවත අර්ථ <BR/>
දක්වයි (SGML නම්යශීලී වේ), එවිට එය බවට පත්වේ .
කෙසේ වෙතත්, HTML redfine නැත, ඒ නිසා <SCRIPT/>
කළ යුතු අදහස් <SCRIPT>>
.
(ඔව්, '>' අන්තර්ගතයේ කොටසක් විය යුතු අතර ටැගය තවමත් වසා නැත .)
පැහැදිලිවම, මෙම XHTML සමග නොසැසඳේ සහ ඇත බොහෝ වෙබ් අඩවි (කාලය විසින් බ්රව්සර තරම් පරිණත විය බිඳ රැකබලා මේ ගැන ), එසේ කිසිවෙක් shorttags ක්රියාත්මක සහ පිරිවිතර ඔවුන්ට එරෙහිව උපදෙස් දෙයි .
'ලදායි ලෙස, සියලුම' වැඩ කරන 'ස්වයං-අවසන් ටැගයන් තාක්ෂණිකව අනුකූල නොවන පාර්සර් මත තහනම් අවසන් ටැග් සහිත ටැග් වන අතර ඇත්ත වශයෙන්ම එය අවලංගුය. XHTML වෙත HTML අනුකූල වන පරිදි මාරුවීමට මෙම කඩුල්ල සමඟ පැමිණියේ W3C ය .
හා <script>
ගේ අවසන් ටැගය වේ තහනම් නොවේ .
"ස්වයං-අවසානය" ටැගය HTML 4 හි හැක් එකක් වන අතර එය අර්ථ විරහිත ය.
HTML 5
HTML5 ටැග් වර්ග පහක් ඇති අතර ඒවා 'අවලංගු' සහ 'විදේශීය' ටැග් පමණි ඇති අතර ස්වයං-වසා දැමීමට අවසර .
<script>
අවලංගු නොවන නිසා (එය විය හැකිය අන්තර්ගතය ) සහ විදේශීය නොවන (MathML හෝ SVG වැනි), <script>
ඔබ එය භාවිතා කරන ආකාරය නොසලකා ස්වයං-වසා දැමිය නොහැක.
නමුත් ඇයි? ඔවුන්ට එය විදේශීය ලෙස සැලකිය නොහැකිද, විශේෂ නඩුවක් හෝ වෙනත් දෙයක් කළ හැකිද?
HTML 5 HTML 4 සහ XHTML 1 ක්රියාත්මක කිරීම සමඟ පසුගාමී-අනුකූල වීම අරමුණු කරයි . එය SGML හෝ XML මත පදනම් නොවේ; එහි වාක්ය ඛණ්ඩය ප්රධාන වශයෙන් සැලකිලිමත් වන්නේ ක්රියාත්මක කිරීම ලේඛනගත කිරීම හා එක්සත් කිරීම ය. ( අවලංගු HTML4 නොතකා යනාදිය වලංගු HTML 5 වන්නේ මේ නිසා ය.)<br/>
<hr/>
ස්වයං-වැසීම <script>
යනු ක්රියාත්මක කිරීම් එකිනෙකට වෙනස් වන ටැගයන්ගෙන් එකකි. එය Chrome, Safari වැඩ කිරීම සඳහා භාවිතා , සහ ඔපෙරා ; මගේ දැනුමට අනුව එය කිසි විටෙකත් ඉන්ටර්නෙට් එක්ස්ප්ලෝරර් හෝ ෆයර්ෆොක්ස් හි වැඩ කළේ නැත.
HTML 5 කෙටුම්පත් කරන විට මෙය සාකච්ඡා කරන ලද අතර එය බ්රව්සර් අනුකූලතාව බිඳ දැමූ නිසා ප්රතික්ෂේප විය . ස්වයං-සමීප ස්ක්රිප්ට් ටැගය ඇති වෙබ් පිටු පැරණි බ්රව්සර්වල නිවැරදිව (කිසිසේත් නොමැති) විදහා දක්වනු ඇත. එහි සිටි අනෙකුත් යෝජනා , නමුත් එක්කෝ ඔවුන් ගැළපුම ගැටලුව විසඳීමට නොහැකි ය.
කෙටුම්පත මුදා හැරීමෙන් පසුව, වෙබ්කිට් විසින් අනුග්රාහකයාට අනුකූල වන පරිදි යාවත්කාලීන කරන ලදී.
<script>
HTML 4 සහ XHTML 1 සමඟ පසුගාමී අනුකූලතාවය නිසා ස්වයං වසා දැමීම HTML 5 හි සිදු නොවේ.
XHTML 1 / XHTML 5
XHTML ලෙස සැබවින්ම සේවය කළ විට <script/>
, වෙනත් පිළිතුරු වල සඳහන් පරිදි සැබවින්ම වසා ඇත.
HTML ලෙස සේවය කරන විට එය ක්රියාත්මක විය යුතු බව පිරිවිතරයේ සඳහන් වනවා හැර :
XHTML ලේඛන ... බොහෝ HTML බ්රව්සර් සමඟ අනුකූල වන බැවින් අන්තර්ජාල මාධ්ය වර්ගය "text / html" [RFC2854] සමඟ ලේබල් කළ හැකිය.
ඉතින්, මොකද වුණේ?
නිශ්චිත අන්තර්ගත ශීර්ෂය නොසලකා ( අන්තර්ගත ස්නයිෆින් ලෙස හැඳින්වේ ) ෆයර්ෆොක්ස් විසින් XHTML ලෙස අනුකූල ලිපි ලේඛන විග්රහ කිරීමට ඉඩ දෙන ලෙස ජනතාව මොසිල්ලාගෙන් ඉල්ලා සිටියහ . මෙය ස්වයං-වසා දැමීමේ ස්ක්රිප්ට් වලට ඉඩ දෙනු ඇති අතර, කෙසේ වෙතත් අන්තර්ගත හොර රහසේ අවශ්ය වූයේ වෙබ් ධාරකයන් නිවැරදි ශීර්ෂයට සේවය කිරීමට තරම් පරිණත නොවූ බැවිනි; IE විය එය හොඳ .
නම් පළමු බ්රවුසරය යුද්ධය IE 6 අවසන් නො වී, XHTML ද, මෙම ලැයිස්තුවට ඇති. නමුත් එය අවසන් විය. IE 6 ට XHTML සමඟ ගැටළුවක් ඇත. ඇත්ත වශයෙන්ම IE නිවැරදි MIME වර්ගයට කිසිසේත් සහාය නොදැක්වූ අතර , සෑම කෙනෙකුමtext/html
XHTML සඳහා භාවිතා කිරීමට බල කළේ IE ප්රධාන වෙළඳපල කොටස හිමි කරගත් නිසාය මුළු දශකය පුරාම කර ගත් බැවිනි.
ද අන්තර්ගතය sniffing විය හැකි නරක මිනිස්සු කියන්නේ එය නතර කළ යුතු .
අවසාන වශයෙන්, W3C විසින් XHTML වංචාකාරී ලෙස අදහස් නොකල බව පෙනේ : ලේඛනය HTML සහ XHTML සහ නීති දෙකමContent-Type
වේ. කෙනෙකුට කිව හැක්කේ ඔවුන් “අපගේ පිරිවිතර අනුගමනය කරන්න” සහ ප්රායෝගික දේ නොසලකා හැරීම මත ස්ථිරව සිටි බවයි . අඛණ්ඩව සිදු වූ අත්වැරැද්දකි පසුව XHTML සංස්කරණ බවට.
කෙසේ වෙතත්, මෙම තීරණය ෆයර්ෆොක්ස් සඳහා වූ කාරණය සමථයකට පත් කළේය . ක්රෝම් උපත ලැබීමට වසර 7 කට පෙර ; වෙනත් වැදගත් බ්රව්සරයක් නොතිබුණි. මේ අනුව එය තීරණය විය.
පහත දැක්වෙන පිරිවිතරයන් නිසා ඩොක්ටයිප් පමණක් සඳහන් කිරීමෙන් එක්ස්එම්එල් විග්රහ කිරීම අවුලුවන්නේ නැත.