অন্যরা "কীভাবে" এবং উদ্ধৃত অনুমানের উত্তর দিয়েছেন। <script/>
বাগ রিপোর্টগুলি এবং মেলিং তালিকাগুলিতে অনেক ঘন্টা খনন করার পরে এখানে "কেন নেই " এর আসল কাহিনীটি এখানে রয়েছে ।
এইচটিএমএল 4
এইচটিএমএল 4 এসজিএমএল ভিত্তিক ।
যার SGML কিছু আছে shorttags যেমন <BR//
, <B>text</>
, <B/text/
, অথবা <OL<LI>item</LI</OL>
। এক্সএমএল প্রথম রূপ গ্রহণ করে, শেষটিকে ">" হিসাবে পুনরায় সংজ্ঞা দেয় (এসজিএমএল নমনীয়), যাতে এটি হয়ে যায়<BR/>
।
তবে এইচটিএমএল পুনরায় সংজ্ঞা দেয় নি, তাই এর অর্থ <SCRIPT/>
হওয়া উচিত <SCRIPT>>
।
(হ্যাঁ, '>' অবশ্যই সামগ্রীর অংশ হওয়া উচিত, এবং ট্যাগটি এখনও নেই বন্ধ ))
একথাও ঠিক যে, এই এক্সএইচটিএমএল এর সঙ্গে সঙ্গতিপূর্ণ নয় এবং হবে অনেক সাইট বিরতি (সময় ব্রাউজার দ্বারা ছিল যথেষ্ট পরিপক্ক যত্ন এই সম্পর্কে ), তাই কেউ কিছু shorttags বাস্তবায়িত এবং স্পেসিফিকেশন তাদের বিরুদ্ধে উপদেশ ।
কার্যকরভাবে, সমস্ত 'ওয়ার্কিং' স্ব-সমাপ্ত ট্যাগগুলি প্রযুক্তিগতভাবে অ-কনফর্মেন্ট পার্সারগুলিতে নিষিদ্ধ শেষ ট্যাগযুক্ত ট্যাগ এবং প্রকৃতপক্ষে অবৈধ। এটি ডাব্লু 3 সি এটি এইচটিএমএল-সামঞ্জস্যপূর্ণ করে এক্সএইচটিএমএলকে রূপান্তরিত করতে সহায়তা করার জন্য এই হ্যাকটি নিয়ে এসেছিল ।
এবং <script>
এর শেষ ট্যাগটি নিষিদ্ধ নয় ।
"স্ব-সমাপ্তি" ট্যাগটি এইচটিএমএল 4 এ একটি হ্যাক এবং অর্থহীন।
এইচটিএমএল 5
এইচটিএমএল পাঁচটি ধরণের ট্যাগ রয়েছে এবং কেবল 'শূন্য' এবং 'বিদেশি' ট্যাগগুলিকে স্ব-সমাপনের অনুমতি দেওয়া হয় ।
কারণ <script>
শূন্য নয় (এটিতে সামগ্রী থাকতে পারে) এবং বিদেশী নয় (ম্যাথএমএল বা এসভিজির মতো),<script>
আপনি এটি কীভাবে ব্যবহার করুন না কেন স্ব-বন্ধ হয়ে উঠতে পারে না।
কিন্তু কেন? তারা কি এটিকে বিদেশী হিসাবে বিবেচনা করতে পারে না, বিশেষ কেস তৈরি করতে পারে, বা কিছু কিছু করতে পারে?
এইচটিএমএল 5 এর লক্ষ্য এইচটিএমএল 4 এবং এক্সএইচটিএমএল বাস্তবায়নের সাথে পশ্চাদপটে সামঞ্জস্যপূর্ণ হতে হবে ; এটি এসজিএমএল বা এক্সএমএল ভিত্তিক নয়; এর বাক্য গঠনটি মূলত ডকুমেন্টিং এবং বাস্তবায়ন একত্রিত করার সাথে সম্পর্কিত। (এ কারণেই অবৈধ এইচটিএমএল 4 হওয়া সত্ত্বেও ইত্যাদি বৈধ এইচটিএমএল 5 ))<br/>
<hr/>
স্ব-সমাপনি <script>
এমন একটি ট্যাগ যেখানে বাস্তবায়নগুলি পৃথকভাবে ব্যবহৃত হত used এটা তোলে ক্রোম, সাফারি কাজ করতেন , এবং অপেরা ; আমার জ্ঞান অনুযায়ী এটি ইন্টারনেট এক্সপ্লোরার বা ফায়ারফক্সে কখনও কাজ করে না।
এইচটিএমএল 5 খসড়া তৈরি হওয়ার সময় এটি আলোচিত হয়েছিল এবং এটি বাতিল হয়ে গেছে কারণ এটি ব্রাউজারের সামঞ্জস্যতা ভঙ্গ করে । ওয়েব-পৃষ্ঠাগুলি যা স্ব-ক্লোজ স্ক্রিপ্ট ট্যাগটি পুরানো ব্রাউজারগুলিতে সঠিকভাবে রেন্ডার করতে পারে না। ছিল অন্যান্য প্রস্তাব , কিন্তু তারা পারেন সামঞ্জস্য সমস্যা সমাধানের করতে পারবে না।
খসড়া প্রকাশ হওয়ার পরে, ওয়েবকিট পার্সারটিকে সামঞ্জস্য করতে আপডেট করেছে।
<script>
এইচটিএমএল 5 এবং এক্সএইচটিএমএল 1 এর পিছনে সামঞ্জস্যের কারণে এইচটিএমএল 5 এ স্ব-সমাপনি ঘটে না।
এক্সএইচটিএমএল 1 / এক্সএইচটিএমএল 5
সত্যই এক্সএইচটিএমএল হিসাবে পরিবেশন করা হলে <script/>
, অন্যান্য উত্তর হিসাবে সত্যিই বন্ধ থাকে বলেছে।
ছাড়া বৈশিষ্ট বলেছেন এটা করা উচিত যখন HTML হিসাবে দায়িত্ব পালন করেন কাজ করেছি:
এক্সএইচটিএমএল ডকুমেন্টস ... বেশিরভাগ এইচটিএমএল ব্রাউজারের সাথে সামঞ্জস্যপূর্ণ হওয়ায় ইন্টারনেট মিডিয়া টাইপ "টেক্সট / এইচটিএমএল" [আরএফসি 2854] দিয়ে লেবেলযুক্ত হতে পারে।
তো, কী হল?
লোকেরা মোজিলাকে নির্দিষ্ট কনটেন্ট শিরোনাম ( কনটেন্ট স্নিফিং হিসাবে পরিচিত ) নির্বিশেষে এক্সএইচটিএমএল হিসাবে ফায়ারফক্সের অনুসারে নথিগুলি বিশ্লেষণ করতে বলেছিল । এটি স্ব-সমাপনী স্ক্রিপ্টগুলিকে অনুমতি দিত এবং যে কোনও উপায়ে স্নিফিং প্রয়োজনীয় ছিল কারণ ওয়েব হোস্টরা সঠিক শিরোলেখ পরিবেশন করার জন্য যথেষ্ট পরিপক্ক ছিল না; আইই ভাল ছিল ।
যদি প্রথম ব্রাউজার যুদ্ধটি আইই 6 দিয়ে শেষ না হয়, এক্সএইচটিএমএলও তালিকায় থাকতে পারে। তবে এটি শেষ হয়ে গেল। এবং আই 6 এর এক্সএইচটিএমএল নিয়ে সমস্যা আছে। বস্তুত ইন্টারনেট সমর্থন দেয়নি সঠিক MIME প্রকার এ সব , অত্যাচার সবাই ব্যবহার করতে text/html
এক্সএইচটিএমএল কারণ ইন্টারনেট অনুষ্ঠিত প্রধান মার্কেট শেয়ার একটি সম্পূর্ণ দশক জন্য।
এবং কন্টেন্ট স্নিফিং সত্যিই খারাপ হতে পারে এবং লোকেরা বলছে এটি বন্ধ করা উচিত ।
পরিশেষে, দেখা যাচ্ছে যে ডাব্লু 3 সি এর অর্থ XHTML কে স্নিগ্ধ করার যোগ্য নয় : ডকুমেন্টটি , এইচটিএমএল এবং এক্সএইচটিএমএল এবং বিধি উভয়ইContent-Type
। কেউ বলতে পারেন যে তারা "কেবল আমাদের অনুমান অনুসরণ করুন" এবং কী ব্যবহারিক ছিল তা উপেক্ষা করে দৃ on়ভাবে দাঁড়িয়ে ছিলেন । একটি ভুল যা পরবর্তী এক্সএইচটিএমএল সংস্করণগুলিতে অব্যাহত ছিল ।
যাইহোক, এই সিদ্ধান্তটি ফায়ারফক্সের জন্য বিষয়টি মীমাংসা করে । ক্রোমের জন্মের 7 বছর আগে ; অন্য উল্লেখযোগ্য ব্রাউজার ছিল না। এভাবেই সিদ্ধান্ত নেওয়া হয়েছিল।
ডক্টাইপটি একা নির্দিষ্ট করে নীচের নির্দিষ্টকরণের কারণে এক্সএমএল পার্সিং ট্রিগার করে না।