<! - [যদি! আইই]> কাজ করছে না


139

আমি পেতে সমস্যা হচ্ছে

<!--[if !IE]>

কাজ করতে. আমি ভাবছি এটি কারণ আমার নথিতে এটি রয়েছে

<!doctype html>
<!--[if lt IE 7]> <html class="ie6 oldie"> <![endif]-->
<!--[if IE 7]>    <html class="ie7 oldie"> <![endif]-->
<!--[if IE 8]>    <html class="ie8 oldie"> <![endif]-->
<!--[if gt IE 8]><!-->
<html class="">
<!--<![endif]-->

আমি যুক্ত করার সময়

<!--[if !IE]><!-->
<link type="text/css" rel="stylesheet" href="/stylesheets/no-ie.css" />
<!--<![endif]-->

আমার শিরোনামে কোনও কারণে এটি কাজ করে না। তবে আমি যদি যোগ করি

<!--[if !IE]><!-->
    <style>
        All my css in here
    </style>
    <!--<![endif]-->

আসল এইচটিএমএল পৃষ্ঠায় (শিরোনামে) এটি কাজ করে। কোনও পরামর্শ? চিয়ার্স

আমার প্রশ্নের আপডেট

ঠিক আছে, আমি সরিয়ে দিলে আমি <!-->কেবল আইই যা যা কাজ করে তা যাচাই করেছিলাম কিন্তু এখন আবার এফএফ-এ-এ-এ-সি-এসএসএস এফএফ-তেও প্রয়োগ করা হয়েছিল। সুতরাং আমি আবার যুক্ত করে <!-->এবং / (এবং এটি মুখ্য টেমপ্লেটে যুক্ত করেছিলাম যাতে সিমিগুলি এটি পুনরায় যোগ করতে পারে না) এবং সমস্ত এফএফ-এ ফিরে কাজ করছে তবে এখন স্টাইলশিটটি আইই প্রয়োগ করা হচ্ছে! তাই চেষ্টা করেছি

<!--[if IE]>
<link type="text/css" rel="stylesheet" href="https://stackoverflow.com/stylesheets/no-ie.css">
<![endif]-->

এবং

<!--[if !IE]> -->
<link type="text/css" rel="stylesheet" href="/stylesheets/no-ie.css">
<!-- <![endif]-->

এবং এটি কার্যকর হয়নি। মূলত আমি এই পৃষ্ঠাটি http://css-tricks.com/example/ResponsiveTables/responsive.php এ কাজ করার চেষ্টা করছি তবে CSS কে স্টাইলশিটে স্থানান্তরিত করব। অবশ্যই এটি সহজ হতে পারে। আমি কী মিস করছি? আমি না হলে আমি জিকুয়েরি ব্যবহার করব না। চিয়ার্স


1
আপনি প্রয়োজন হবে না <!-->পরে অবিলম্বে<!--[if !IE]>
techfoobar

29
দ্রষ্টব্য: আইই যদি কেবল আই 9 পর্যন্ত কাজ করে।
ক্যামেরনজোনসভেব

কিছু লোক কিছু পৃষ্ঠায় মজার মজার আই আই বার্তা রেখে গেছে।
neverMind9

@ ক্যামেরোনজোনস ওয়েব আপনি কি একটি রেফারেন্সের সাথে লিঙ্ক করতে পারেন দয়া করে অন্যথায় এ জাতীয় বিবৃতি এতটা কার্যকর নয়?
ট্রেইনোসিস

@ ট্রেইনোসিস, আমি আমার মন্তব্যটি 5 বছরের পুরানো
ক্যামেরনজোনসওয়েব

উত্তর:


236
<!--[if !IE]><!--><script src="zepto.min.js"></script><!--<![endif]-->
<!--[if IE]><script src="jquery-1.7.2.min.js"></script><![endif]-->

দ্রষ্টব্য: এই শর্তযুক্ত মন্তব্যগুলি এখন আর 10 থেকে সমর্থিত নয়


39
জুন 2013 হিসাবে, এই শুধুমাত্র এই পৃষ্ঠাতে সঠিক উত্তর।
জনবি

2
এই রেখায় কী বন্ধ হওয়া বন্ধনী বন্ধ রয়েছে? এটি হওয়া উচিত নয়: <! - [if! IE]> <! -> <স্ক্রিপ্ট src = "zepto.min.js"> </script> <! -> <! [Endif] ->
n00shie

1
এটি এবং অন্যান্য সমস্ত শর্তাধীন মন্তব্য সমাধানগুলির সাথে, আইই 10 / আইই 11 সনাক্ত করবে না
লয়েড ব্যাংক

9
এটা তোলে IE 11 থাকতে কাজ করে না, এটা স্ক্রিপ্ট লোড করে, এমনকি যদি শর্ত আই ই হয়!
Giedrius

49
@Giedrius IE10 থেকে, শর্তাধীন মন্তব্য করছে আর সমর্থিত : msdn.microsoft.com/en-us/library/ie/hh801214(v=vs.85).aspx
acdcjunior

70

আইআই ব্যতীত অন্য ব্রাউজারগুলি শর্তসাপেক্ষ বিবৃতিগুলিকে মন্তব্য হিসাবে বিবেচনা করে কারণ তারা মন্তব্য ট্যাগের মধ্যে আবদ্ধ।

<!--[if IE]>
Non-IE browsers ignore this
<![endif]-->

তবে, আপনি যখন এমন ব্রাউজারটিকে টার্গেট করছেন যা IE নয়, আপনাকে কোডের আগে এবং একটি পরে 2 টি মন্তব্য ব্যবহার করতে হবে। IE তাদের মধ্যে থাকা কোডটিকে উপেক্ষা করবে, অন্য ব্রাউজারগুলি এটিকে স্বাভাবিক কোড হিসাবে বিবেচনা করবে। নন-আইই ব্রাউজারগুলি লক্ষ্যবস্তু করার জন্য সিনট্যাক্সটি হ'ল:

<!--[if !IE]-->
IE ignores this
<!--[endif]-->

দ্রষ্টব্য: এই শর্তযুক্ত মন্তব্যগুলি এখন আর 10 থেকে সমর্থিত নয়


1
দারুণ. তার জন্য ধন্যবাদ. স্টাইলশীটটি এখন কাজ করে তবে আমার যে সমস্যাটি রয়েছে তা হ'ল শিরোনামের উপরের পৃষ্ঠার শীর্ষে এটি << - [যদি! আইই] -> <! - [এন্ডিফ] -> (ট্যাগটি গিয়েছিল হেডারের অংশে দেহ নয়)
ব্যবহারকারীর 1516788

21
-1: এই উত্তর ভুল কারণ <!--[if !IE]-->IE ignores this<!--[endif]-->হয় না IE থেকে লুকানো! (7, 8, বা 9)
জনবি

3
উত্তরগুলির কোনওটিই আমার পক্ষে কার্যকর হয়নি, সম্ভবত আইই 10 এর সাম্প্রতিক প্রকাশে কিছু পরিবর্তন হয়েছে (আইই 9 মোডেও চেষ্টা করা হয়েছে)। - সমস্ত প্রচেষ্টা সমস্ত ব্রাউজারে আইই বিভাগে পৌঁছে যায় (IE নয় এবং নয়)।
ড্যানি ভারোড

2
আইই 10 শর্তযুক্ত বিবৃতি সমর্থন করে না।
বৃশ্চিক

1
<! - [যদি আইই]]> এবং <! [এন্ডিফ] -> - তে সাদা জায়গাগুলি সম্পর্কে সচেতন থাকুন - কোনও শ্বেতস্থান থাকতে হবে না (উদাহরণস্বরূপ! - এবং [। এটি সাদা জায়গার সাথে কাজ করে না
রবার্ট Skarżycki

37

কেউ যদি এখনও এই পৃষ্ঠায় পৌঁছায় তবে আপডেট, অর্থাত্ লক্ষ্য করে কেন কাজ করে না wond আইই 10 এবং এর পরে শর্তযুক্ত মন্তব্যগুলিকে সমর্থন করে না। এমএস অফিসিয়াল ওয়েবসাইট থেকে:

ইন্টারনেট এক্সপ্লোরার 10 স্ট্যান্ডার্ড এবং উন্নত আন্তঃব্যবহারযোগ্যতা এবং এইচটিএমএল 5 এর সম্মতি মেনে চলার জন্য শর্তযুক্ত মন্তব্যের জন্য সমর্থন সরিয়ে দেওয়া হয়েছে।

আরও তথ্যের জন্য দয়া করে এখানে দেখুন: http://msdn.microsoft.com/en-us/library/ie/hh801214(v=vs.85).aspx

আপনার যদি মারাত্মকভাবে টার্গেট করার প্রয়োজন হয় তবে আপনি এই jquery কোডটি একটি ie ক্লাস যুক্ত করতে এবং তারপরে আপনার CSS তে .ie শ্রেণিটি ব্যবহার করতে পারেন যেমন ব্রাউজারগুলি লক্ষ্য করে।

if ($.browser.msie) {
 $("html").addClass("ie");
}

আপডেট: jQuery 1.9 এর পরে Qu। ব্রাউজারটি উপলভ্য নয়। আপনি যদি ১.৯ এর উপরে jQuery এ আপগ্রেড করেন বা আপনি ইতিমধ্যে এটি ব্যবহার করেন তবে আপনি jQuery এর পরে jQuery স্থানান্তর স্ক্রিপ্ট অন্তর্ভুক্ত করতে পারেন যাতে এটি অনুপস্থিত অংশ যুক্ত করে: jQuery মাইগ্রেট প্লাগইন

বিকল্পভাবে, দয়া করে সম্ভাব্য কাজের জন্য এই থ্রেডটি পরীক্ষা করুন: jQuery 1.9.1 এ আপডেট করার পরে browser.msie ত্রুটি


এটি একটি বাস্তব চমৎকার সমাধান! এমনকি নির্দিষ্ট ক্লাস প্রয়োগ করতে আমার ডোম গাছের উপরে এটি ব্যবহার করার দরকার নেই।
মিমি

2
দয়া করে মনে রাখবেন, এটি jQuery 1.3 থেকে
অবহিত

13

আমি এটি ব্যবহার করি এবং এটি কার্যকর হয়:

<!--[if !IE]><!--> if it is not IE <!--<![endif]-->

ফায়ারফক্সের ফলাফলটি আমার সম্পূর্ণ মন্তব্যগুলিকে আমার কাছে মন্তব্য হিসাবে দেখায়। @ চার্মান্ডার সলিউশন আইই এবং ফায়ারফক্স উভয়ের জন্যই কাজ করেছিল - <! [যদি! আইই]> <! [এন্ডিফ]>
টম চেম্বারলাইন

3
দ্রষ্টব্য: এই শর্তসাপেক্ষ মন্তব্যগুলি আর আইই 10 এর পরে সমর্থিত নয়
ফ্লিম

12

মাইক্রোসফ্ট-ডাউনলভেল-প্রকাশিত শর্তাধীন "মন্তব্যগুলি" এর জন্য প্রস্তাবিত বাক্য গঠনটি হ'ল:

<![if !IE]>
<link type="text/css" rel="stylesheet" href="/stylesheets/no-ie.css" />
<![endif]>

এগুলি মন্তব্য নয়, তবে তারা সঠিকভাবে কাজ করে।


এই লিঙ্কটি পাওয়া গেছে যা এই উত্তরটিকে সমর্থন করে, এছাড়াও প্রচুর অন্যান্য তথ্য রয়েছে যা থ্রেডকে সহায়তা করতে পারে, আমি মনে করি এটি একটি গুরুত্বপূর্ণ বিষয় ... কেবলমাত্র তাত্পর্য আমি দেখছি যদি কোনও লুকানো বা প্রকাশিত বাক্য গঠন ব্যবহৃত হয় এবং আমি নিশ্চিত না যে এটি কীভাবে অন্যান্য ব্রাউজার প্রভাবিত হবে ... msdn.microsoft.com/en-us/library/ms537512.ASPX
user1360809

2
দ্রষ্টব্য: এই শর্তসাপেক্ষ মন্তব্যগুলি আর আইই 10 এর পরে সমর্থিত নয়
ফ্লিম

8

সর্বোপরি সঠিক বাক্য গঠনটি হ'ল:

<!--[if IE 6]>
<link type="text/css" rel="stylesheet" href="https://stackoverflow.com/stylesheets/ie6.css" />
<![endif]-->

এই পোস্টটি ব্যবহার করে দেখুন: http://www.quirksmode.org/css/condcom.html এবং http://css-tricks.com/how-to-create-an-ie-only-stylesheet/

আর একটি জিনিস যা আপনি করতে পারেন:

JQuery সহ ব্রাউজারটি পরীক্ষা করুন:

if($.browser.msie){ // do something... }

এই ক্ষেত্রে আপনি কিছু উপাদানগুলির জন্য সিএসএস বিধি পরিবর্তন করতে পারেন বা নতুন সিএসএস লিংক রেফারেন্স যুক্ত করতে পারেন:

এটি পড়ুন: http://rickardnilsson.net/post/2008/08/02/ আবেদন করা- স্টাইলশীট- নামকরণে-উইথ- jQuery.aspx


আরও নির্ভুল উত্তরের জন্য উপরের ব্যবহারকারীর ১৩৪৪৪৪০ এর উত্তর দেখুন।
ক্রিস পিটারস

2
JQuery আপডেটের কারণে, যে কেউ row .browser.msie ব্যবহার করে, তাদের jquery-migrate.js অন্তর্ভুক্ত করতে হবে এবং তারপরে এটি কাজ করবে।
উচ্চাকাঙ্ক্ষী কানাডিয়ান

1
দ্রষ্টব্য: এই শর্তসাপেক্ষ মন্তব্যগুলি আর আইই 10 এর পরে সমর্থিত নয়
ফ্লিম

উত্তরে প্রদত্ত লিঙ্কটি মারা গেছে।
পঙ্কজ

8

নীচে <!-- [if !IE] --> মাই ফুল সিএসএস ব্লকের জন্য আপনাকে একটি স্থান রাখা দরকার , যেহেতু আই 8 মিডিয়া প্রশ্নের সাথে ভয়ঙ্কর

<!-- IE 8 or below -->   
<!--[if lt IE 9]>
<link rel="stylesheet" type="text/css"  href="https://stackoverflow.com/Resources/css/master1300.css" />        
<![endif]-->
<!-- IE 9 or above -->
<!--[if gte IE 9]>
<link rel="stylesheet" type="text/css" media="(max-width: 100000px) and (min-width:481px)"
    href="https://stackoverflow.com/Resources/css/master1300.css" />
<link rel="stylesheet" type="text/css" media="(max-width: 480px)"
    href="https://stackoverflow.com/Resources/css/master480.css" />        
<![endif]-->
<!-- Not IE -->
<!-- [if !IE] -->
<link rel="stylesheet" type="text/css" media="(max-width: 100000px) and (min-width:481px)"
    href="/Resources/css/master1300.css" />
<link rel="stylesheet" type="text/css" media="(max-width: 480px)"
    href="/Resources/css/master480.css" />
<!-- [endif] -->

আপনার মন্তব্যের জন্য ধন্যবাদ তবে আমি <! - [যদি! আইই] -> <লিঙ্ক rel = "স্টাইলশিট" টাইপ = "পাঠ্য / সিএসএস" href = "/ স্টাইলশিট / নং- ie.csss" /> <ব্যবহার করি! - [endif] -> তারপরে অন্যান্য ব্রাউজারগুলি এটি প্রয়োগ করে।
ব্যবহারকারী 1516788

3
এই পয়েন্টটি কি নয়, অন্যান্য ব্রাউজারগুলিকে সেই বিভাগটি প্রয়োগ করতে হবে?
জন হেডফোর্ড

1
-1: !IEএখানে উল্লিখিত কৌশলটি আসলে IE 7 থেকে 10 এর মধ্যে মন্তব্যকৃত ব্লকটি কার্যকর করবে
ইয়ান ক্যাম্পবেল

1
দ্রষ্টব্য: এই শর্তসাপেক্ষ মন্তব্যগুলি আর আইই 10 এর পরে সমর্থিত নয়
ফ্লিম

8

আইই ব্যবহারকারীদের টার্গেট করার জন্য:

<!--[if IE]>
Place Content here for Users of Internet Explorer.
<![endif]-->

অন্য সকলকে লক্ষ্য করার জন্য:

<![if !IE]>
Place Content here for Users of all other Browsers.
<![endif]>

শর্তাধীন মন্তব্যগুলি কেবল ইন্টারনেট এক্সপ্লোরার দ্বারা সনাক্ত করা যায়, অন্যান্য সমস্ত ব্রাউজার এটিকে সাধারণ মন্তব্য হিসাবে থ্রেড করে।

IE 6,7 ইত্যাদি টার্গেট করার জন্য আপনাকে যদি ইফ স্টেটমেন্টে "গ্রেটার থান ইক্যুয়াল" বা "লেজার থান (সমান)" ব্যবহার করতে হয়। এটার মত.

বৃহত্তর অথবা সমান:

<!--[if gte IE 7]>
Place Content here for Users of Internet Explorer 7 or above.
<![endif]-->

এর চেয়ে কম:

<!--[if lt IE 6]>
Place Content here for Users of Internet Explorer 5 or lower.
<![endif]-->

সূত্র: মিডিয়াকল্লেজ ডট কম


2
দ্রষ্টব্য: এই শর্তসাপেক্ষ মন্তব্যগুলি আর আইই 10 এর পরে সমর্থিত নয়
ফ্লিম

7

এটি IE9 অবধি রয়েছে

<!--[if IE ]>
<style> .someclass{
    text-align: center;
    background: #00ADEF;
    color: #fff;
    visibility:hidden;  // in case of hiding
       }
#someotherclass{
    display: block !important;
    visibility:visible; // in case of visible

}
</style>

এটি আই 9 এর পরের জন্য

  @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {enter your CSS here}

5

আইই ব্রাউজারের জন্য:

<!--[if IE]>
<meta http-equiv="Content-Type" content="text/html; charset=Unicode">
<![endif]-->

সমস্ত নন-আইই ব্রাউজারগুলির জন্য:

<![if !IE]>
<meta http-equiv="Content-Type" content="text/html; charset=utf8">
<![endif]>

8 বা এর বেশি নয় এমন সমস্ত ব্রাউজারের জন্য IE

<!--[if (gt IE 8)|!(IE)]><!--><script src="/_JS/library/jquery-2.1.1.min.js"></script><!--<![endif]-->

3

শর্তসাপেক্ষ মন্তব্যটি এমন একটি মন্তব্য <!--[if IE]>যা শুরু হয় যা আইআই ব্যতীত অন্য কোনও ব্রাউজার দ্বারা পড়া যায় না।

২০১১ সাল থেকে শর্তসাপেক্ষ মন্তব্যটি মাইক্রোসফ্টের ঘোষিত হিসাবে আইই 10 ফর্মটি শুরু করার জন্য সমর্থন করে না https://msdn.microsoft.com/en-us/library/hh801214(v=vs.85).aspx

শর্তসাপেক্ষ মন্তব্যগুলি ব্যবহারের একমাত্র বিকল্প হ'ল আইই 9 হিসাবে আপনার সাইটটি চালনার অনুরোধ করা যা শর্তাধীন মন্তব্যগুলিকে সমর্থন করে।

আপনি কেবল নিজের জন্য সিএসএস এবং / অথবা জেএস ফাইল লিখতে পারেন এবং অন্যান্য ব্রাউজারগুলি এটি লোড বা কার্যকর করতে পারে না।

এই কোড স্নিপেটটি দেখায় যে কীভাবে আইই 10 বা 11 চালানো যায় - ie-only.css এবং ie-only.js এ আইই সামঞ্জস্যতার সমস্যাগুলি সমাধান করার জন্য কাস্টম কোড রয়েছে।

    <html>
      <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9">
      <!--[if IE]>
            <meta http-equiv="Content-Type" content="text/html; charset=Unicode">
            <link rel="stylesheet" type="text/css" href='/css/ie-only.css' />
            <script src="/js/ie-only.js"></script>
      <![endif]-->
    </html>

1

আপনি যদি আইটি 10 ​​বা তদূর্ধ্বের সাথে কাজ করছেন, http://tanalin.com/en/articles/ie-version-js/ তে উল্লিখিত হিসাবে শর্তাধীন মন্তব্যগুলি আর সমর্থনযোগ্য নয়। আপনি বিকল্প পদ্ধতি হিসাবে https://gist.github.com/jasongaylord/5733469 উল্লেখ করতে পারেন , যা ট্র্যাডিশন সংস্করণটি নেভিগেটর.ইউসারএজেন্ট থেকেও পরীক্ষা করা হয়েছে। ব্রাউজারটি সামঞ্জস্যতা মোডে কাজ করছে এমন ক্ষেত্রে এটিও যাচাই করা হয়েছে।


1

এটি আমার জন্য সংস্করণ 6 (আই 7, 8, 9, 10, ইত্যাদি, ক্রোম 3 এখনকার চেয়ে 3, এবং এফএফ ভেরি 3 এখন যা আছে তার চেয়ে বেশি) সমস্ত ব্রাউজার জুড়ে কাজ করে:

//test if running in IE or not
        function isIE () {
            var myNav = navigator.userAgent.toLowerCase();
            return (myNav.indexOf('msie') != -1 || myNav.indexOf('trident') != -1) ? true : false;
        }

0

আইই ব্রাউজারটি সনাক্ত করতে আমি এই জাভাস্ক্রিপ্টটি ব্যবহার করছি

if (
    navigator.appVersion.toUpperCase().indexOf("MSIE") != -1 ||
    navigator.appVersion.toUpperCase().indexOf("TRIDENT") != -1 ||
    navigator.appVersion.toUpperCase().indexOf("EDGE") != -1
)
{
    $("#ie-warning").css("display", "block");
}

0

আপনাকে ফার্নান্দো 68 ধন্যবাদ, আমি এটি ব্যবহার করেছি:

function isIE () {
     var myNav = navigator.userAgent.toLowerCase();
     return (myNav.indexOf('msie') != -1 || myNav.indexOf('trident') != -1) ? true : false;
}

if(isIE()){
     $.getScript('js/script.min.js', function() {
            alert('Load was performed.');
     });
}

-1

আমি এই কোডটি আমার ব্রাউজারে কাজ করতে পারি:

<!--[if lt IE 9]>
  <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
  <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
<![endif]-->

এই কোডটির জন্য দ্রষ্টব্য: এইচটিএমএল 5 শিব এবং রেসপন্ড.জেএসআইএইচএমএল 5 উপাদান এবং মিডিয়া প্রশ্নের জন্য সমর্থন support

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