<স্টাইল> <body> তে থাকা কি ভুল ধারণা হবে?


12

নীচের কোডে আমি মাথার পরিবর্তে দেহের ট্যাগ সহ অভ্যন্তরীণ স্টাইল শীটটি রেখেছি। সিঙ্গল-পেজ-অ্যাপ্লিকেশনটির জন্য আমি পৃথক পেজ স্পেসিফিক সিএসএস ফাইল না করে কেবল সেই পৃষ্ঠাতে প্রযোজ্য শৈলীর জন্য এটি করার জন্য বিবেচনা করছি।

আমি যেমন মাথা বিভাগে একই রাখছি না এমন পরিস্থিতি কি এখানে খারাপ দিক রয়েছে?

<!-- myPartial.html starts here --> 
<!-- Like to keep styles unique to this html right here in this file --> 
<div>
  <style>
    body { background-color: red; }
    #myText { color: white; }
  </style>

  <span id='myText'>Hello</span>
</div>
<!-- myPartial.html ends here --> 

উত্তর:


18

একজন styleভিতরে উপাদান bodyউপাদান এইচটিএমএল সিনট্যাক্স নিয়ম লঙ্ঘন করে। (এইচটিএমএল 5 খসড়া অনুযায়ী, কিছু শর্তে এটি অনুমোদিত হয়, যদি scopedবৈশিষ্ট্যগুলি উপস্থিত থাকে; এই বৈশিষ্ট্যটি কিছু ব্রাউজার দ্বারা সমর্থিত হয়)) অন্যদিকে, ব্রাউজারগুলি যত্ন করে না। headএবং bodyউপাদানগুলির মধ্যে বিভক্তি তাত্ত্বিক।

তবুও, আপনি styleভিতরে রাখার বিপরীতে অবৈধ সিনট্যাক্স ব্যবহার করে কিছুই অর্জন করতে পারেন না head। কিছু বাহ্যিক পরিবেশে কেবলমাত্র অজুহাতটি প্রযুক্তিগত সীমাবদ্ধতা হবে যা আপনাকে কোনও headঅংশে আটকানো থেকে বিরত রাখতে পারে ।

একটি ব্যবহার ইস্যু styleবনাম মাধ্যমে এক্সটারনাল স্টাইলশিট উপাদান linkসম্পূর্ণরূপে এই প্রশ্নের লম্ব হয়।


1
আপনার উত্তরের প্রথম অংশটি অগত্যা সত্য নয়
প্যাট্রিকসুইন

1
@ পেট্রিকুইন, আমি মনে করি এটি এই প্রসঙ্গে কিছুটা তাত্ত্বিক, তবে একটি সঠিক পর্যবেক্ষণ; উত্তর আপডেট হয়েছে।
Jukka K. Korpela 16'14

আমি আমার পদ্ধতির জন্য ইতিবাচক হিসাবে "ব্রাউজারগুলিকে যত্ন করি না"। যেহেতু আমার পৃষ্ঠাগুলি পার্টিয়াল (একক পৃষ্ঠা-অ্যাপ্লিকেশন), তাই <<> বিভাগে আমি <body> বা শরীরে অভ্যন্তরীণ উপাদানগুলি কেন রাখার চেষ্টা করছি তার কারণটি <<> বিভাগে থাকতে পারে না।
শরণ

2
@ গ্যালাক্সি, আমি দেখতে পাচ্ছি না কেন একটি একক পৃষ্ঠার অ্যাপ্লিকেশনটিতে headউপাদানটির অভাব হবে । একটি HTML পৃষ্ঠায় সর্বদা একটি থাকে।
Jukka K. Korpela

@ জুক্কা.কর্পেলা, আমি আপনার প্রশ্নের উত্তর দেওয়ার জন্য আমার প্রশ্নের কোড অংশ আপডেট করেছি।
শরণ

6

(যেহেতু আমরা এখানে এসইএসএক্স এ আছি, তাই কৌশলগত বিবেচনার জন্য আরও কৌশলগত পদ্ধতির মূল্যবান বর্ধন হতে পারে))

[উপস্থাপন] এইচটিএমএল 5 স্পেস একটি ক্রমাগত চলমান লক্ষ্য, এবং তাদের প্রতিষ্ঠিত সাধারণ অনুশীলনকে অনুসরণ করার নীতি রয়েছে। তারা অতীতে বৈশিষ্ট্যগুলি অচল করে ফেলেছিল এবং পুনরুত্থিত করেছিল, অন্যের অর্থ পরিবর্তন করেছিল, পদ্ধতিগত সুপারিশগুলির ফোকাসকে স্থানান্তরিত করেছিল etc. এটি মানব জাতির সমস্ত জ্ঞানের সাথে একসাথে উপলব্ধ হয়ে চিরকালীন জন্য রচিত নয়। কল্পনা সত্যের পবিত্র উত্স নয়। এটি কেবল প্রাকৃতিক যে কখনও কখনও ব্রাউজারগুলি ঠিক থাকে। [/ প্রস্তাবনা]

ওপির পরিস্থিতি অপ্রতিরোধ্যভাবে সাধারণ এবং বৈধ।

আপনার থিমটি ডিজাইন এবং ইনস্টল করে একটি সিএমএস রয়েছে, সমস্ত সিএসএস হেড থেকে সঠিকভাবে লোড হয়েছে, তারপরে আপনি সেখানে আছেন পৃষ্ঠার সম্পাদক, একটি ফ্যাশনেবল ডাব্লুওয়াইএসআইওয়াইজি বাক্স রেখে যা আপনি (Godশ্বরের ধন্যবাদ!) "উত্স মোড" এ স্যুইচ করতে পারেন এবং এইচটিএমএল মার্কআপে (পেস্ট) টাইপ করুন (আগে আরও কোথাও তৈরি করা হয়েছিল, আরও উপযুক্ত সরঞ্জাম সহ)। ভাগ্যক্রমে আপনি STYLEট্যাগগুলিও অন্তর্ভুক্ত করতে পারেন (সম্ভবত একটি ট্যাগ ফিল্টারে একটি নির্লজ্জ বাদ পড়ার কারণে) ... দিনটি রক্ষা পেয়েছে, প্রচুর পুনরাবৃত্ত আত্মা-ধ্বংসাত্মক কর্ম থেকে। তবে পৃষ্ঠার সম্পাদনা পরিস্থিতি থেকে সিস্টেমের হেড উপাদানটিতে হস্তক্ষেপ করার এখনও আপনার কোনও উপায় নেই।

আপনার কি এইচটিএমএল টুকরোগুলি দিয়ে আপনার সিএসএসকে সোজা উপায়ে ব্যবহার করা থেকে বিরত রাখা উচিত?

অথবা, আপনার একক পৃষ্ঠার এজাক্স অ্যাপ্লিকেশন রয়েছে।

এটি দীর্ঘ অধিবেশনটির জন্য পুনরায় লোড ছাড়াই চলছে, এবং এখানে বিভিন্ন সিনেমেটিক্ট সামগ্রী রয়েছে যা এলোমেলোভাবে এবং স্বতন্ত্রভাবে স্টাইলযুক্ত বিভিন্ন এলোমেলো উত্স থেকে আসে। STYLEকোনও এমবেড থাকা STYLEউপাদান নিয়ে আসার পরিবর্তে কেবলমাত্র কেবলমাত্র ইনলাইন বৈশিষ্ট্যগুলি ব্যবহার করার জন্য এগুলিকে প্রথমে রূপান্তরিত করা আবশ্যক be

তদুপরি: আপনি ক) বৈশিষ্ট্যগুলির BODYমাধ্যমে ইতিমধ্যে যে কোনও সিএসএস এম্বেড এমএস এম এম এম এম এম্বেড করে নিতে পারেন STYLE, তাই CSS সেখানে যাইহোক "তাত্ত্বিকভাবে" আইনী; এবং খ) জাভাস্ক্রিপ্ট থেকে যখনই আপনি (এবং আরও কিছু) চান ঠিক তেমন কোনও স্টাইল দিয়ে আপনি ইতিমধ্যে যা কিছু করতে পারেন তাই সিএসএস ইতিমধ্যে প্যাথলজিক্যালি অ-পারফরম্যান্ট উপায়ে অপব্যবহার করা সম্ভব। এবং আমরা কেউই কখনও এই বৈশিষ্ট্যগুলিকে আপত্তি করি না। বা ডাব্লু 3 সিও করে না।

সুতরাং, এর STYLEউপাদানগুলির সম্পর্কে ঠিক কী এত খারাপ BODY? এই অতিরিক্ত প্রতিকূল প্রভাবগুলি কী কী এটি এইচটিএমএল কনস্ট্রাক্টসে আমাদের বিস্তৃত অস্ত্রাগারকে যুক্ত করবে? আরও খারাপ অভিনয়? সম্ভবত। কখনও কখনও।

কোনও কারণেই প্রতিটি ব্রাউজার দ্বারা সমর্থিত এই অবিশ্বাস্যভাবে কার্যকর অনুশীলনটি বাতিল করার কি এটিই বৈধ কারণ? মিলিয়নে নয়!

আমরা বোকা নই। ঠিক আছে, সমস্ত না, বা সর্বদা নয় ...;) দুর্বল পারফরম্যান্সের ঝুঁকিযুক্ত কৌশলগুলি কেবলমাত্র নিষিদ্ধের চেয়ে ডকুমেন্ট করা যেতে পারে । ওয়েবের প্রথম দিনগুলিতে আমরা জাভা অ্যাপলেট ব্যবহার করতাম এবং বেঁচে থাকতাম। গাড়িগুলির অপব্যবহার করা যায়, দুর্দশার কারণ হতে পারে, এমনকি খাবার ব্যাঘাত ঘটাতে, অকার্যকর উপায়ে ব্যবহার করা যেতে পারে, এবং যে ড্রাইভাররা খেতে পারে, গড়পড়তা, এমনকি গড় ওয়েব ডিজাইনারের চেয়ে আরও বোকা। এছাড়া, প্রিয় W3C এর চিন্তা করার কোন প্রয়োজন: তাদের পা থাকার এইচটিএমএল tinkerers এর রাগ গরুর পালের সঙ্গে বন্ধ গুলি STYLEউপাদান BODYএখনও W3C এর পরে যেতে পারে না এবং প্রতিশোধ নিতে। তারা ঠিকানা জানে না। এবং তাদের পা নেই।

সুতরাং, দয়া করে: STYLEআইনী হওয়ার জন্য আপনার ভয়েসটি শুনতে দিন BODY! বাধ্যতামূলকভাবে পাঠ্যটি উদ্ধৃত করা, তবে বর্তমানের চেয়ে ভাল একটি কার্যকর বিকল্প প্রদান করতে ব্যর্থ হওয়া কোনও সহায়ক নয় of এটি আসলে এই শেষ-রিসোর্টের কার্যবিধ কৌশলটির জন্য হুমকি।

মনে রাখবেন: এইচটিএমএল 5 স্পেককে একটি সুপারিশ বলা হয় ।


আপডেট করুন: চশমা পরিশেষে ধরা: STYLEহয় এখন বৈধ মধ্যে BODY! ;)
লুনাকিড

1
আপডেট 2: চশমাগুলি ধরা পড়ে না কারণ তারা তাদের মন পরিবর্তন করেছিল (লুনাকিডের লিঙ্কটিতে ক্লিক করুন, এটি আপডেট হয়েছিল)।
ম্যাক্সিমিলিয়ান ল্যামিস্টার

2

এইচটিএমএল স্পেসিফিকেশন বলে যে

কোনও স্কোপযুক্ত বৈশিষ্ট্য ছাড়াই একটি শৈলী উপাদান ডকুমেন্টের শিরোনামে উপস্থিতিতে সীমাবদ্ধ।

স্কোপযুক্ত বৈশিষ্ট্যটি একটি বুলিয়ান মান এটি নির্দেশ করে যে এটি কেবল শৈলীর মৌলিক উপাদানটির মূল উপলোকের সাথে যুক্ত হওয়া উচিত।

এই মুহূর্তে কেবল ফায়ারফক্স স্কোপযুক্ত বৈশিষ্ট্যটিকে সমর্থন করে। http://www.w3schools.com/tags/att_style_scoped.asp


5
ডাব্লু 3 স্কুল স্কুল রেফারেন্স হিসাবে বা মোটেও উদ্ধৃত করা উচিত নয়; দেখতে w3fools.com
Jukka কে Korpela

2
এবং এটি প্রশ্নের উত্তর দেয় না।
Jukka K. Korpela

1
ধন্যবাদ @ জুক্কা.কর্পেলা এটিই প্রথম লিঙ্কটি খুঁজে পেয়েছিল যে স্কোপযুক্ত বৈশিষ্ট্যযুক্ত ব্রাউজার সমর্থনটি উদ্ধৃত করে। অন্য মন্তব্যটি আরও ভাল উদ্ধৃতি প্রদান করে। আপনার উত্তরটি +1 করুন -1 আপনার গঠনমূলক মন্তব্যের চেয়ে কম।
ক্র্যাড

স্পেকের দিকে ইঙ্গিত করার পাশাপাশি স্কোপিংয়ের জন্য সমর্থনের অভাবকে লক্ষ্য করার জন্য +1 (যা অনুষঙ্গটি মেনে চলা প্রয়োজন)। আমি মনে করি খুব খারাপ দরিদ্র @ যুঙ্কা.কর্পেলা সেখানে বন্দুকের লাফানোর আগে উত্তরটি পড়ে নেওয়া উচিত ছিল। আপনি অনুমানের চেয়ে সত্যই বেশি বিশ্বাসযোগ্য হতে পারেন না এবং এটি প্রশ্নের সঠিক উত্তর দেয়। " শরীরে স্টাইল রাখা কি ভুল ধারণা হবে " - অনুসারে " হ্যাঁ এটি হবে "।
লন্ডনে ফার্গাস

1

আপনার সিএসএস বনাম একটি স্টাইল ট্যাগ বনাম থাকার কয়েকটি প্রযুক্তিগত কারণ রয়েছে:

  • সিএসএস মিনিফায়ার ব্যবহারের ক্ষমতা (আমি বিশ্বাস করি না মিনিফায়ার স্টাইল ট্যাগগুলিতে কাজ করে)
  • ব্রাউজারের মাধ্যমে সিএসএস ফাইল ক্যাশে রাখতে সক্ষম হতে।

কোনও ফাইল ব্যবহারের মতামত ভিত্তিক কিছু কারণ:

  • আপনি সাস (কমপাস) বা তার চেয়ে কম এর মতো দুর্দান্ত সিএসএস প্রিপ্রসেসর ব্যবহার করতে পারেন।
  • আপনি আপনার আবেদনে সিএসএস যুক্ত করার দুটি উপায় বজায় রাখছেন।

আমার ব্যক্তিগত পছন্দটি হ'ল প্রতিটি পৃষ্ঠার জন্য পৃথক ফাইল রাখার জন্য কমপাস ব্যবহার করা এবং তারপরে সেগুলি একটি ফাইলে সংকলন করতে ব্যবহার করুন। সেই একক ফাইলটি প্রতিটি পৃষ্ঠা দ্বারা অন্তর্ভুক্ত করা হবে। যদি রাস্তায় নামা যায় তবে ফাইলগুলি সর্বদা যে কারণেই হতে পারে তার জন্য পৃথক করা দরকার তবে এর মধ্যে এটি ঝামেলা করার মতো নয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.