আপনি ওয়েব ব্রাউজ করার সময়, একটি ডিভাইস থেকে অন্য ডিভাইসে ভিন্ন দেখায় এমন সাইট জুড়ে আসা অস্বাভাবিক কিছু নয়। সম্ভবত কিছু বৈশিষ্ট্য মোটেও কাজ করে না।
প্রায়শই, এটি ওয়েবসাইটের সাথে একটি সমস্যা নয়। এটা আপনার ব্রাউজার. পাঁচটি প্রধান ডেস্কটপ ব্রাউজার একটি ওয়েব পৃষ্ঠা প্রদর্শনের জন্য চারটি ভিন্ন "রেন্ডারিং ইঞ্জিন" ব্যবহার করে — Windows 10-এর জন্য নতুন Microsoft Edge ব্রাউজারটি পঞ্চমটি চালু করবে — এবং প্রতিটি আলাদাভাবে কাজ করে৷
এর মানে হল আপনি কোন ব্রাউজারটি ব্যবহার করছেন এবং এমনকি সেই ব্রাউজারটির কোন সংস্করণের উপর নির্ভর করে ওয়েবে আপনার অভিজ্ঞতা পরিবর্তন হতে পারে৷
রেন্ডারিং ইঞ্জিন কি?
একটি ওয়েব পৃষ্ঠা একটি একক সত্তা নয় যা একবারে এক পিক্সেল স্ক্রিনে ডাউনলোড এবং প্রদর্শিত হয়৷ পরিবর্তে এটি মূলত বিভিন্ন ধরণের কোডে লেখা নির্দেশাবলীর একটি সিরিজ - HTML, CSS, JavaScript, PHP এবং অন্যান্য - যা ব্রাউজারকে কী করতে হবে এবং কোথায় এবং কীভাবে করতে হবে তা বলে৷
প্রতিটি ব্রাউজার একটি রেন্ডারিং ইঞ্জিন ব্যবহার করে, যাকে কখনও কখনও লেআউট ইঞ্জিন হিসাবেও উল্লেখ করা হয়, কোডের মধ্যে থাকা বিষয়বস্তু এবং স্টাইলিং তথ্য নিতে এবং এটি সম্পূর্ণরূপে বিন্যাসিত আকারে স্ক্রিনে প্রদর্শন করতে।
সমস্যা হল, প্রতিটি ব্রাউজারে ব্যবহার করা হয় এমন একটি রেন্ডারিং ইঞ্জিন নেই। এবং যখন প্রতিটি ভাষা একটি বিস্তারিত স্পেসিফিকেশন দ্বারা সংজ্ঞায়িত করা হয়, তখন ইঞ্জিন শুধুমাত্র সেই স্পেসিফিকেশনের একটি ব্যাখ্যা দিতে পারে।
বিশেষ করে CSS (যে কোডটি স্টাইলিং তথ্য প্রদান করে) দিয়ে, কোনো ইঞ্জিন ঠিক একই ফলাফল দেবে না। কখনও কখনও পার্থক্যগুলি এখানে বা সেখানে বিজোড় মিসলাইনড পিক্সেলের পরিমাণ হতে পারে, তবে কখনও কখনও সেগুলি আরও আমূল ভিন্ন হতে পারে৷
কোন ব্রাউজার কোন ইঞ্জিন ব্যবহার করে
চারটি প্রধান রেন্ডারিং ইঞ্জিন রয়েছে যা সবচেয়ে জনপ্রিয় ব্রাউজার ব্যবহার করে।
- ওয়েবকিট: একটি ওপেন সোর্স ইঞ্জিন Safari দ্বারা ব্যবহৃত OS X এবং iOS, সেইসাথে মোবাইল ডিভাইসে অন্যান্য অনেক ব্রাউজার, যার মধ্যে নেটিভ অ্যান্ড্রয়েড ব্রাউজার রয়েছে;
- ব্লিঙ্ক: ওয়েবকিটের উপর ভিত্তি করে একটি ওপেন সোর্স ইঞ্জিন, এটি ক্রোম, অপেরা, অ্যামাজন সিল্ক এবং অ্যান্ড্রয়েডের ওয়েবভিউ (অ্যাপগুলির মধ্যে খোলে ব্রাউজার);
- গেকো: মজিলা ফাউন্ডেশন দ্বারা তৈরি একটি ওপেন সোর্স ইঞ্জিন, এটি ফায়ারফক্স দ্বারা ব্যবহৃত হয়;
- ত্রিশূল: একটি মালিকানাধীন ইঞ্জিন মাইক্রোসফ্ট দ্বারা বিকাশিত এবং ইন্টারনেট এক্সপ্লোরারে ব্যবহৃত হয়। মাইক্রোসফ্ট এজ ব্রাউজারটি এজএইচটিএমএল নামে একটি নতুন সংস্করণ ব্যবহার করবে।
ওয়েব স্ট্যান্ডার্ড
বিভিন্ন রেন্ডারিং ইঞ্জিনের মধ্যে ব্যবধানটি ইন্টারনেট এক্সপ্লোরার যখন প্রভাবশালী ব্রাউজার ছিল তার চেয়ে অনেক কম৷
অ্যাসিড 3-এর মতো পরীক্ষাগুলি দেখায় যে একটি ব্রাউজার একটি পৃষ্ঠাকে কতটা সঠিকভাবে রেন্ডার করে এবং বেশিরভাগ আধুনিক ব্রাউজারগুলি উচ্চ স্কোর করে। যাইহোক, মান মেনে চলা একটি অত্যন্ত জটিল কাজ।
HTML, CSS এবং অন্যদের স্পেসিফিকেশন অনেক বড়। নতুন উপাদান যোগ করা হয়; পুরানো, অব্যবহৃত বা পুরানো অপসারণ করা হয়। রেন্ডারিং ইঞ্জিনগুলিকে এই পরিবর্তনগুলি প্রতিফলিত করতে অনেক সময় লাগতে পারে৷
HTML5 এবং CSS স্পেক্সের কিছু উপাদান এখনও কোনও মূলধারার ব্রাউজার দ্বারা সমর্থিত নয়, কিছু শুধুমাত্র আংশিকভাবে সমর্থিত, অন্যগুলি এখনও কিছু ব্রাউজার দ্বারা সমর্থিত কিন্তু সবগুলি নয়৷
ওয়েবসাইট html5test.com আপনাকে আপনার ব্রাউজার এবং আপনি যে নির্দিষ্ট সংস্করণটি চালাচ্ছেন তা পরীক্ষা করতে সক্ষম করে, এটি HTML5 এর অফিসিয়াল এবং পরীক্ষামূলক উভয় বৈশিষ্ট্যকে কতটা সমর্থন করে তা দেখতে। লেখার সময়, ইন্টারনেট এক্সপ্লোরার (v11) র্যাঙ্কিং সর্বনিম্ন সহ, Chrome প্রধান ব্রাউজারগুলির মধ্যে সেরা হিসাবে স্থান পেয়েছে৷
যদি একজন ওয়েব ডেভেলপার এমন একটি বৈশিষ্ট্য ব্যবহার করে যা একটি ব্রাউজারে সমর্থিত কিন্তু অন্য ব্রাউজারে নয়, তবে অসমর্থিত ব্রাউজারটিকে অবশ্যই একটি কাছাকাছি সমতুল্য স্থির করতে হবে অথবা বৈশিষ্ট্যটিকে সম্পূর্ণরূপে উপেক্ষা করতে হবে (উদাহরণস্বরূপ, একটি স্বচ্ছ বাক্স অ-স্বচ্ছ হিসাবে রেন্ডার করা যেতে পারে)।পি>
এটি ওয়েব পেজ রেন্ডার করার কাজটিকে যতটা দেখা যায় তার চেয়ে অনেক বেশি জটিল করে তোলে। একটি ব্রাউজার যা প্রায়শই আপডেট করা হয় সেটির চেয়ে বেশি মান-সম্মত হতে পারে যা নয়, যেমনটি অনেক বেশি বিরল IE আপডেটের তুলনায় নিয়মিত স্বয়ংক্রিয় ক্রোম আপডেট দ্বারা হাইলাইট করা হয়৷
এবং খেলার মধ্যে অন্যান্য কারণও আছে।
- ইঞ্জিনে বাগ: একটি রেন্ডারিং ইঞ্জিন হল সফ্টওয়্যার, এবং সমস্ত সফ্টওয়্যারে বাগ রয়েছে৷ যদিও সমালোচনামূলক বাগগুলি খুঁজে পাওয়া যাবে এবং দ্রুত বাতিল করা হবে, এটা নিশ্চিত করা অসম্ভব যে একটি ওয়েব পৃষ্ঠায় কোডের একটি নির্দিষ্ট সংমিশ্রণ রেন্ডার করার সময় অপ্রত্যাশিত ফলাফল আনবে না
- ওয়েব পৃষ্ঠায় বাগ: ব্রাউজারগুলির ত্রুটি সহনশীলতার একটি নির্দিষ্ট স্তর রয়েছে, তবে এটি একটি ইঞ্জিন থেকে অন্য ইঞ্জিনে আলাদা হবে৷ কোডে ত্রুটি সহ একটি ওয়েব পৃষ্ঠা এখনও একটি ব্রাউজারে নিখুঁতভাবে রেন্ডার হতে পারে, তবে অন্যটিতে ভয়ঙ্করভাবে ভেঙে যেতে পারে
- ফন্ট: টাইপফেসগুলি যেভাবে প্রদর্শিত হয় তা ব্রাউজার দ্বারা নয়, অপারেটিং সিস্টেম দ্বারা পরিচালিত হয়৷ Windows এবং OS X ভিন্নভাবে হরফ রেন্ডার করে, তাই একই ব্রাউজারে একই ফন্ট ভিন্ন দেখাতে পারে যখন বিভিন্ন প্ল্যাটফর্মে দেখা যায়
- উত্তরাধিকার: অফিসিয়াল স্পেকের অংশ হওয়ার আগে ব্রাউজারগুলি প্রায়ই নতুন বৈশিষ্ট্য গ্রহণ করে, বিশেষ করে CSS-এর জন্য। যদি বৈশিষ্ট্যটি গৃহীত হওয়ার সময় এর বাস্তবায়ন পরিবর্তন হয়, তবে ব্রাউজার বিকাশকারীকে সিদ্ধান্ত নিতে হবে যে পুরানো সংস্করণের জন্য ডিজাইন করা হাজার হাজার ওয়েবসাইটের সাথে পরিবর্তন এবং ঝুঁকি ভাঙার সামঞ্জস্যতা গ্রহণ করবে, নাকি নতুন সংস্করণটিকে সম্পূর্ণরূপে উপেক্ষা করবে
- মালিকানা বৈশিষ্ট্য: কিছু ব্রাউজার মালিকানা প্রযুক্তি ব্যবহার করতে পারে যা অন্য কোথাও পাওয়া যায় না। এটি ইন্টারনেট এক্সপ্লোরারে মাইক্রোসফটের অ্যাক্টিভএক্স ফ্রেমওয়ার্কের সাথে সবচেয়ে বিখ্যাতভাবে দেখা গেছে, যদিও কোম্পানিটি নতুন Microsoft Edge ব্রাউজারে এটি ব্যবহার করবে না
মোড়ানো
৷অনেক সমস্যা জড়িত, এতে অবাক হওয়ার কিছু নেই যে ব্রাউজারগুলি ওয়েব পৃষ্ঠাগুলি পরিচালনা করার পদ্ধতিতে পার্থক্য বজায় রাখে৷
পরিস্থিতির উন্নতি হচ্ছে, কিন্তু পুরোপুরি সমাধান হওয়ার সম্ভাবনা নেই। প্রত্যেকে তাদের নির্বাচিত ব্রাউজারটির সর্বশেষ সংস্করণ চালালে এটি সাহায্য করবে, কিন্তু ছয় বছরের পুরনো ইন্টারনেট এক্সপ্লোরার 8 এখনও 4.5 শতাংশ মার্কেট শেয়ার বজায় রেখে, এটি অনেক দূরের পথ।
আপনি কোন ব্রাউজার ব্যবহার করেন এবং আপনি কি এটি আপ টু ডেট রাখেন? আপনি কি এমন কোনো ওয়েবসাইট খুঁজে পেয়েছেন যা আপনার নির্বাচিত ব্রাউজারে কাজ করে না? কমেন্টে আমাদের জানান।
ইমেজ ক্রেডিট: জেরেমি কিথের মাধ্যমে ডিভাইস, ডানকান হিলের মাধ্যমে অসমর্থিত ব্রাউজার