সিএসএস শ্রেণীর নাম / নির্বাচকদের মধ্যে কোন অক্ষর বৈধ?


1201

সিএসএস শ্রেণি নির্বাচকদের মধ্যে কোন অক্ষর / চিহ্নগুলি অনুমোদিত ?
আমি জানি যে নিম্নলিখিত অক্ষরগুলি অবৈধ , তবে কোন অক্ষরগুলি বৈধ ?

~ ! @ $ % ^ & * ( ) + = , . / ' ; : " ? > < [ ] \ { } | ` #

5
সংশ্লিষ্ট প্রশ্ন: stackoverflow.com/questions/2812072/...
BalusC

32
utf8 চরিত্র সম্পর্কে কি? আমি গ্রীক টাইপ করতে পারি
গরিলাএপ

9
বিশেষ অক্ষর তাদের পলায়নের দ্বারা বর্গ নাম ব্যবহার করা যেতে পারে - আপনার সিএসএস ফাইলে আপনি একটি বর্ণনা করতে পারেন .hello/worldব্যাকস্ল্যাশ পলায়নের দ্বারা শ্রেণী: .hello\2fworld, hello\2f worldবাhello\/world
wyqydsyq

1
সম্পর্কিত আরও একটি প্রশ্ন, "নামের সিনট্যাক্স" সম্পর্কে নয়, একাধিক নাম প্রকাশ করার সময় "শ্রেণীর গুণাবলীর সিনট্যাক্স" সম্পর্কে ।
পিটার ক্রাউস

2
আপনি ইমোজিও ব্যবহার করতে পারেন। npmjs.com/package/postcss-modules-emoji- শ্রেণীর নাম
কেভিন

উত্তর:


1024

আপনি সরাসরি CSS ব্যাকরণে পরীক্ষা করতে পারেন ।

মূলত 1 , একটি নাম অবশ্যই একটি আন্ডারস্কোর ( _), একটি হাইফেন ( -), বা একটি চিঠি ( a- z) দিয়ে শুরু করা উচিত, তারপরে যে কোনও সংখ্যক হাইফেন, আন্ডারস্কোর, অক্ষর বা সংখ্যার দ্বারা অনুসরণ করা যেতে পারে। একটি ধরা: যদি প্রথম অক্ষর একটি হাইফেন হয়, তাহলে দ্বিতীয়টি চরিত্র নয় 2 একটি অক্ষর বা আন্ডারস্কোর হতে, এবং নাম কমপক্ষে 2 অক্ষর বিশিষ্ট হওয়া উচিত।

-?[_a-zA-Z]+[_a-zA-Z0-9-]*

সংক্ষেপে, পূর্ববর্তী নিয়মটি নিম্নলিখিতটি অনুবাদ করে, ডাব্লু 3 সি অনুমান থেকে প্রাপ্ত :

সিএসএসে, সনাক্তকারী (উপাদানগুলির নাম, শ্রেণি এবং নির্বাচকগুলিতে আইডি সহ) কেবলমাত্র [a-z0-9] এবং আইএসও 10646 বর্ণ U + 00A1 এবং উচ্চতর, এবং হাইফেন (-) এবং আন্ডারস্কোর (_) ধারণ করতে পারে ; তারা একটি অঙ্ক, বা একটি হাইফেন পরে একটি অঙ্ক দিয়ে শুরু করতে পারবেন না। শনাক্তকারীগুলিতে পালানো অক্ষর এবং কোনও আইএসও 10646 অক্ষর সংখ্যার কোড হিসাবে থাকতে পারে (পরের আইটেমটি দেখুন)। উদাহরণস্বরূপ, "B&W" শনাক্তকারী? "বি \ ও ডাব্লু \" হিসাবে লেখা যেতে পারে? বা "বি \ 26 ডাব্লু \ 3 এফ"।

শনাক্তকারী একটি হাইফেন দিয়ে শুরু বা আন্ডারস্কোর সাধারণত হিসাবে, ব্রাউজার-নির্দিষ্ট এক্সটেনশন জন্য সংরক্ষিত -moz-opacity

1 পালিয়ে যাওয়া ইউনিকোড চরিত্রগুলি অন্তর্ভুক্ত করে এগুলি কিছুটা আরও জটিল করে তুলেছে (যেটি সত্যই কেউ ব্যবহার করে না)।

2 দ্রষ্টব্য, আমি সংযুক্ত ব্যাকরণ অনুসারে, TWO হাইফেন, যেমন --indent1, দিয়ে শুরু হওয়া একটি নিয়ম অবৈধ। তবে আমি নিশ্চিত যে আমি এটি বাস্তবে দেখেছি।


57
এনবি: ডাব্লু 3 সি বলছে যে নেতৃস্থানীয় '-' বা '_' এর ব্যবহারটি বিক্রেতা-নির্দিষ্ট সিএসএস এক্সটেনশনের জন্য সংরক্ষণ করা উচিত (উদাহরণস্বরূপ, মোজিলা ব্রাউজারগুলি দ্বারা প্রয়োগ করা - মোজ * ক্লাস)।
মিপাদি

3
Es -স্কেপগুলি সাধারণত ব্যবহৃত হয়, তবে সাধারণত বেশিরভাগ সিএসএস হ্যাকের উদ্দেশ্যে, ব্রাউজারগুলি সমর্থন করে না যা তাদের সমর্থন করে না।
ববিনস

5
ডব্লিউ ccounter.com / গ্লোবালস্ট্যাটস.এফপি অনুসারে @ পিম জ্যাজারের মন্তব্য আপডেট করার জন্য, আই 66 এখন আই -9 এর পিছনে 4%, আই 7 এর 9%, আইআই 8 22% -তে ব্যবহার করা হয়েছে users ফায়ারফক্সের সমস্ত সংস্করণে 28% রয়েছে, ক্রোমের সমস্ত সংস্করণ 17% রয়েছে।
ড্যানিয়েল আরউইকার

3
আমি জানি এটি একটি পুরানো উত্তর, তবে সিএসএস (কমপক্ষে 2+) সনাক্তকারীগুলিতে কোনও {নন-এএসসিআইআই} চরিত্রের অনুমতি দেয় ।
ব্যবহারকারী 2864740

11
In CSS, identifiers (including element names, classes, and IDs in selectors) can contain only the characters [a-zA-Z0-9] and ISO 10646 characters U+00A0 and higher, plus the hyphen (-) and the underscore (_); they cannot start with a digit, two hyphens, or a hyphen followed by a digit. Identifiers can also contain escaped characters and any ISO 10646 character as a numeric code (see next item). For instance, the identifier "B&W?" may be written as "B\&W\?" or "B\26 W\3F"। সুতরাং - --indent1অবৈধ এবং \--indent1--
এড়িয়ে চলার দরকার রয়েছে

177

আমার অবাক করার জন্য এখানে বেশিরভাগ উত্তর ভুল। এটা দেখা যাচ্ছে যে:

সিএসএসে সিএসএস শ্রেণির নামগুলিতে এনএলইউ ব্যতীত অন্য কোনও অক্ষর অনুমোদিত। (সিএসএসে যদি নুল থাকে (পালিয়ে যায় বা না থাকে) তবে ফলাফলটি সংজ্ঞাযুক্ত নয় [[ সিএসএস-অক্ষর ])

ম্যাথিয়াস Bynens 'উত্তর লিঙ্ক ব্যাখ্যা এবং গণদেবতা কিভাবে এই নাম ব্যবহার না দেখিয়েই। সিএসএস কোডে লিখিত , কোনও শ্রেণির নামের জন্য পলায়নের দরকার হতে পারে , তবে এটি শ্রেণীর নাম পরিবর্তন করে না। উদাহরণস্বরূপ, অকারণে পালিয়ে যাওয়া উপস্থাপনাটি সেই নামের অন্যান্য উপস্থাপনাগুলির চেয়ে পৃথক দেখাচ্ছে তবে এটি এখনও একই শ্রেণীর নামকে বোঝায়।

বেশিরভাগ অন্যান্য (প্রোগ্রামিং) ভাষাগুলিতে ভেরিয়েবল নামগুলি পালানোর ধারণা নেই ("সনাক্তকারী"), সুতরাং ভেরিয়েবলের সমস্ত উপস্থাপনা একইরকম দেখতে হবে। সিএসএসে এটি হয় না।

উল্লেখ্য HTML এ কোন উপায় অন্তর্ভুক্ত করা নেই স্থান অক্ষর (স্থান, ট্যাব, লাইন ফিড, ফর্ম ফিড এবং গাড়ি ফেরত) একটি বর্গ নাম অ্যাট্রিবিউট কারণ তারা একে অপরের থেকে ইতিমধ্যে পৃথক ক্লাস।

সুতরাং, আপনার যদি প্রয়োজন হয় একটি এলোমেলো স্ট্রিংকে একটি সিএসএস ক্লাসের নামতে: NUL এবং স্থানের যত্ন নিন, এবং অবলম্বন করুন (সেই অনুসারে CSS বা HTML এর জন্য) for সম্পন্ন.


7
আপনার উত্তরের প্রথম লাইনটি "এখানে বেশিরভাগ উত্তর পুরানো / কেবল CSS2 এ প্রয়োগ করা উচিত" হওয়া উচিত।
সালমান এ

7
@ সালমানআ আমি যে উত্তরগুলি উল্লেখ করি তা প্রথম থেকেই ভুল ছিল। সেগুলি CSS2.1, CSS2 বা CSS1 এ প্রয়োগ হয় না।
রবার্ট সিমার

@RobertSiemer ভাল পয়েন্ট, আমি আমার মন্তব্য সরানো stackoverflow.com/questions/50812118/... (যা কখনো কম এর সাথে সম্পর্কিত এই বিষয়)
পিটার টি

এবং জাভাস্ক্রিপ্ট বাস্তবায়ন: github.com/mathiasbynens/CSS.escape/blob/master/css.escape.js
ডুয়ার্তে কুনহা লিওও

70

আমি এখানে আপনার প্রশ্নের গভীরভাবে উত্তর দিয়েছি: http://mathiasbynens.be/notes/css-escapes

নিবন্ধটি কীভাবে সিএসএসের কোনও অক্ষর (এবং জাভাস্ক্রিপ্ট) এড়াতে হবে তাও ব্যাখ্যা করেছে এবং আমি এটির জন্য একটি সহজ সরঞ্জামও তৈরি করেছি। এই পৃষ্ঠা থেকে:

আপনি যদি কোনও উপাদানকে একটি আইডি মান দিতে চান ~!@$%^&*()_+-=,./';:"?><[]{}|`#তবে নির্বাচকটি এর মতো দেখতে পাবেন:

সিএসএস:

<style>
  #\~\!\@\$\%\^\&\*\(\)\_\+-\=\,\.\/\'\;\:\"\?\>\<\[\]\\\{\}\|\`\#
  {
    background: hotpink;
  }
</style>

javascript:

<script>
  // document.getElementById or similar
  document.getElementById('~!@$%^&*()_+-=,./\';:"?><[]\\{}|`#');
  // document.querySelector or similar
  $('#\\~\\!\\@\\$\\%\\^\\&\\*\\(\\)\\_\\+-\\=\\,\\.\\/\\\'\\;\\:\\"\\?\\>\\<\\[\\]\\\\\\{\\}\\|\\`\\#');
</script>

4
@ ড্যারিল অবশ্যই এটি অত্যন্ত চূড়ান্ত উদাহরণ, তবে এর মতো জিনিসগুলি কার্যকর class="404-error"হতে পারে।
ম্যাথিয়াস বাইনেস

আমার একটি উদাহরণ রয়েছে: আমি একটি সিনট্যাক্স হাইলাইটিং সিস্টেমের আউটপুটকে সিএসএসে রূপান্তর করি। এর ক্লাসের নাম রয়েছে "আইএসও সি ++: প্রকার ( _ টি / _ টাইপ)"। যদি আমি কেবল শ্বেত স্পেস প্রতিস্থাপন করি তবে আমার বৈধ শ্রেণীর নাম থাকবে।
উড়ন্ত ভেড়া

আপনার ওয়েবসাইটে, আপনি বলেছেন যে স্থানের অক্ষরটি ব্যাকস্ল্যাশ পালাতে পারে। আমি যখন এটি ক্লাসের নামে চেষ্টা করি তখন আমি এটি কাজ করতে পারি না। আমি লক্ষ করেছি যে এই উদাহরণে কোনও স্থান নেই। এটা কি সম্ভব?
আডামার্ল

@Adamarla <p class="foo bar">দুই শ্রেণীর যোগ pউপাদান: fooআর bar। এইচটিএমএল উপাদানটিতে শ্বেতস্পেস যুক্ত একটি শ্রেণিকাম যুক্ত করার কোনও উপায় নেই (যা আমি ভাবতে পারি)। হোয়াইটস্পেস অক্ষরগুলি থেকে কীভাবে পালানো যায় সে সম্পর্কিত তথ্য অন্তর্ভুক্ত করা হয়েছিল কারণ এটি অন্যান্য সনাক্তকারী প্রসঙ্গে যেমন ফন্টের পরিবারের নামগুলিতে এই জাতীয় অক্ষরগুলি থেকে বাঁচতে কার্যকর।
ম্যাথিয়াস বাইনেস

3
জীবনের বেশিরভাগ জিনিসের মতো সিএসএসেও মনে হয় যে "প্রযুক্তিগতভাবে চরম থেকে আইনী" এবং "বুদ্ধিমান" এর মধ্যে পার্থক্য রয়েছে।
ফোকসম্যান

69

ডাব্লু 3 সি অনুমান পড়ুন । (এটি সিএসএস ২.১, আপনার ব্রাউজারগুলির অনুমানের জন্য উপযুক্ত সংস্করণটি সন্ধান করুন)

সম্পাদনা: প্রাসঙ্গিক অনুচ্ছেদ নিম্নলিখিত:

সিএসএসে, সনাক্তকারী (উপাদানগুলির নাম, শ্রেণি এবং নির্বাচকগুলিতে আইডি সহ) কেবলমাত্র [a-z0-9] এবং আইএসও 10646 বর্ণ U + 00A1 এবং উচ্চতর, এবং হাইফেন (-) এবং আন্ডারস্কোর (_) ধারণ করতে পারে ; তারা একটি অঙ্ক, বা একটি হাইফেন পরে একটি অঙ্ক দিয়ে শুরু করতে পারবেন না। শনাক্তকারীগুলিতে পালানো অক্ষর এবং কোনও আইএসও 10646 অক্ষর সংখ্যার কোড হিসাবে থাকতে পারে (পরের আইটেমটি দেখুন)। উদাহরণস্বরূপ, "B&W" শনাক্তকারী? "বি \ ও ডাব্লু \" হিসাবে লেখা যেতে পারে? বা "বি \ 26 ডাব্লু \ 3 এফ"।

সম্পাদন করা 2: যেমন @mipadi পাশাপাশি আটকান তিন তক্তার উপর অংকিত ছবি এর উত্তরে পয়েন্ট আউট, এই হচ্ছে সতর্কীকরণ একই ওয়েব পেজ এ:

সিএসএসে, সনাক্তকারীরা '-' (ড্যাশ) বা '_' (আন্ডারস্কোর) দিয়ে শুরু করতে পারে। '-' বা '_' দিয়ে শুরু হওয়া কীওয়ার্ড এবং সম্পত্তির নাম বিক্রেতা-নির্দিষ্ট এক্সটেনশনের জন্য সংরক্ষিত। এই জাতীয় বিক্রেতার নির্দিষ্ট এক্সটেনশনের নিম্নলিখিত ফর্ম্যাটগুলির একটি থাকতে হবে:

'-' + vendor identifier + '-' + meaningful name 
'_' + vendor identifier + '-' + meaningful name

উদাহরণ (গুলি):

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

অন্যান্য পরিচিত উদাহরণ:

 -moz-box-sizing
 -moz-border-radius
 -wap-accesskey

প্রাথমিক ড্যাশ বা আন্ডারস্কোরটি কোনও বর্তমান বা ভবিষ্যতের স্তরের সিএসএসের দ্বারা কোনও সম্পত্তি বা কীওয়ার্ডে কখনও ব্যবহার না করার গ্যারান্টিযুক্ত। সুতরাং সাধারণ সিএসএস বাস্তবায়নগুলি এ জাতীয় বৈশিষ্ট্যগুলি স্বীকৃতি না দিতে পারে এবং পার্সিং ত্রুটিগুলি পরিচালনা করার নিয়ম অনুসারে এগুলি উপেক্ষা করতে পারে। তবে, প্রাথমিক ড্যাশ বা আন্ডারস্কোর ব্যাকরণের অংশ হওয়ায়, সিএসএস ২.১ প্রয়োগকারীরা সর্বদা একটি সিএসএস-অনুসারে পার্সার ব্যবহার করতে সক্ষম হওয়া উচিত, তারা কোনও বিক্রেতার-নির্দিষ্ট এক্সটেনশানকে সমর্থন করে কিনা।

লেখকদের বিক্রেতার-নির্দিষ্ট এক্সটেনশনগুলি এড়ানো উচিত


আমি আপনার দ্বিতীয় সম্পাদনাটি শীর্ষস্থানীয় ড্যাশগুলি এবং আন্ডারস্কোরগুলি সম্পর্কে উল্লেখ করছি তবে এটি স্পষ্ট করে বলতে ভুলে গেছি। বিভ্রান্তির জন্য দুঃখিত.
আলবিন

24

সম্পূর্ণ নিয়মিত প্রকাশটি হ'ল:

-?(?:[_a-z]|[\200-\377]|\\[0-9a-f]{1,6}(\r\n|[ \t\r\n\f])?|\\[^\r\n\f0-9a-f])(?:[_a-z0-9-]|[\200-\377]|\\[0-9a-f]{1,6}(\r\n|[ \t\r\n\f])?|\\[^\r\n\f0-9a-f])*

সুতরাং " -" এবং " _" ব্যতীত আপনার তালিকাভুক্ত সমস্ত চরিত্রের সরাসরি ব্যবহারের অনুমতি নেই। তবে আপনি এগুলি ব্যাকস্ল্যাশ foo\~barব্যবহার করে বা ইউনিকোড স্বরলিপি ব্যবহার করে এনকোড করতে পারেন foo\7E bar


কেন [\200-\377]? [\178-\1114112]সিএসএস 3 unescaped অনুমতি দেওয়া হয়
ভেড়া উড়ন্ত

\377এখানে আসলে ভুল। সিএসএস ২.১ এর লেক্সিকাল স্ক্যানার বিভাগের ব্যাকরণে একটি নোট রয়েছে যা উল্লেখ করেছে: "" \ 377 "ফ্লেক্সের বর্তমান সংস্করণগুলি (দশমিক 255) এর সাথে ডিল করতে পারে এমন সর্বোচ্চ চরিত্রের সংখ্যা উপস্থাপন করে It এটি" 77 4177777 "হিসাবে পড়া উচিত ( দশমিক 1114111), যা ইউনিকোড / আইএসও -10646 এর সর্বোচ্চ সম্ভাব্য কোড পয়েন্ট। " এটিও পাশাপাশি হওয়া উচিত \240, নয় \377। আমার ধারণা এখন এটি 7 বছর বয়সী যদিও এরপরেই সম্ভবত কিছুটা পরিবর্তন হয়েছে।
জেমস ডোনেলি

1
আমি বিশ্বাস করি যে আরও সঠিক নিয়মিত প্রকাশ হবে -?(?:[_a-z]|(?![\u0000-\u0239]).*|\\[0-9a-f]{1,6}(\r\n|[ \t\r\n\f])?|\\[^\r\n\f0-9a-f])(?:[_a-z0-9-]|(?![\u0000-\u0239]).*|\\[0-9a-f]{1,6}(\r\n|[ \t\r\n\f])?|\\[^\r\n\f0-9a-f])*
জেমস ডোনেলি

2
@ জেমসডোনাল্লি দয়া করে আমার উত্তরটি সম্পাদনা করতে নির্দ্বিধায় দয়া করে আপনার কিছু আপডেটের প্রয়োজন বলে মনে করেন।
গম্বো

11

যাঁরা কাজের লক্ষণ খুঁজছেন তাদের জন্য, আপনি কোনও অ্যাট্রিবিউট সিলেক্টর ব্যবহার করতে পারেন, উদাহরণস্বরূপ, যদি আপনার ক্লাসটি একটি নম্বর দিয়ে শুরু হয়। পরিবর্তন:

.000000-8{background:url(../../images/common/000000-0.8.png);} /* DOESN'T WORK!! */

এটি:

[class="000000-8"]{background:url(../../images/common/000000-0.8.png);} /* WORKS :) */

এছাড়াও, যদি একাধিক ক্লাস থাকে তবে আপনার মনে হয় নির্বাচকগুলিতে তাদের নির্দিষ্ট করা দরকার।

সূত্র:

  1. https://benfrain.com/when-and-where-you-can-use-numbers-in-id-and-class-names/
  2. সংখ্যার সাথে শুরু হওয়া নামগুলির সাথে সিএসএসের ক্লাস তৈরি করার কি কোনও উপায় নেই?

5

আমার বোধগম্যতা হ'ল আন্ডারস্কোরটি প্রযুক্তিগতভাবে বৈধ। চেক আউট:

https://developer.mozilla.org/en/underscores_in_class_and_id_names

"... 2001 এর প্রথম দিকে প্রকাশিত স্পেসিফিকেশনটির ত্রুটিটি প্রথমবারের জন্য আন্ডারস্কোরকে আইনী করে তুলেছিল।"

উপরের লিঙ্কযুক্ত নিবন্ধটি বলে যে এগুলি কখনই ব্যবহার করবেন না, তারপরে এমন ব্রাউজারগুলির একটি তালিকা দেয় যা তাদের সমর্থন করে না, এটির সবগুলিই কমপক্ষে, দীর্ঘ-অনর্থক ব্যবহারকারীদের সংখ্যার ক্ষেত্রে।


4

এইচটিএমএল 5 / সিএসএস 3 এর জন্য ক্লাস এবং আইডি সংখ্যা দিয়ে শুরু করতে পারেন।


1
আপনি এই জন্য একটি উৎস আছে? সম্ভবত আমি কিছু মিস করছি, তবে CSS3 নির্বাচকরা সিএসএস ২.১ অনুচ্ছেদে শনাক্তকারী সংজ্ঞায় লিঙ্ক যুক্ত করে যা নেতৃস্থানীয় সংখ্যার অনুমতি দেয় না।
রায়ান

11
w3.org/TR/2003/WD-css3-syntax-20030813/#characters <- এখনও নেতৃস্থানীয় সংখ্যা ইত্যাদির অনুমতি দেয় না (যদিও এটি কাজ করে)
জেমি পেট

10
এইচটিএমএল 5 ক্লাস এবং আইডি সংখ্যার (যেমন class="1a") দিয়ে শুরু করতে দেয় to তবে, একটি সিএসএস শনাক্তকারী কোনও সংখ্যা দিয়ে শুরু করতে পারে না (যেমন .1aকাজ করবে না)। আপনি এড়াতে পারবেন, শক্ত (যেমন .\31 aবা .\000031a)।
ওরিওল

যদিও এটি সাধারণত সিএসএসেও কাজ করে তবে মনে হয় এটি এখনও অফিসিয়াল নয়। "সম্পত্তির নাম এবং বিধি-বিধানের নাম সর্বদা শনাক্তকারী, যা একটি চিঠি বা একটি হাইফেনের পরে একটি চিঠি শুরু করতে হবে এবং তারপরে অক্ষর, সংখ্যা, হাইফেন বা আন্ডারস্কোর থাকতে পারে contain" - w3.org/TR/css3-syntax/#syntax- বিবরণ
স্টিকাররা

@ পাংলোস তবে শ্রেণীর নামগুলি সম্পত্তির নাম বা নিয়ম নাম নয়।
বেনেট ম্যাকএলউই

1

@ ট্রিপটিচের উত্তরটি বন্ধ করে দিয়ে আপনি স্ট্রিংকে বৈধ করতে নীচের দুটি রেজেক্স ম্যাচ ব্যবহার করতে পারেন:

[^a-z0-9A-Z_-]

এটি একটি বিপরীত ম্যাচ যা সহজেই অপসারণের জন্য কোনও অক্ষর, সংখ্যা, ড্যাশ বা আন্ডারস্কোর নয় এমন কোনও কিছুই নির্বাচন করে।

^-*[0-9]+

এটি সহজে সরানোর জন্যও স্ট্রিংয়ের শুরুতে 1 বা আরও সংখ্যার পরে 0 বা 1 টি ড্যাশের সাথে মেলে।

আমি কীভাবে এটি পিএইচপি ব্যবহার করি:

//Make alphanumeric with dashes and underscores (removes all other characters)
$class = preg_replace("/[^a-z0-9A-Z_-]/", "", $class);
//Classes only begin with an underscore or letter
$class = preg_replace("/^-*[0-9]+/", "", $class);
//Make sure the string is 2 or more characters long
return 2 <= strlen($class) ? $class : '';
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.