উত্তর:
সাস সিন্ট্যাক্স অগ্রগতি সহ একটি সিএসএস প্রি-প্রসেসর। উন্নত বাক্য গঠনের স্টাইল শিটগুলি প্রোগ্রাম দ্বারা প্রক্রিয়া করা হয় এবং নিয়মিত সিএসএস স্টাইল শীটে রূপান্তরিত হয়। যাইহোক, তারা সিএসএস মান নিজেই প্রসারিত করে না ।
সিএসএস ভেরিয়েবলগুলি সমর্থিত এবং প্রি-প্রসেসরের ভেরিয়েবলগুলি পাশাপাশি ব্যবহার করা যায়।
এসসিএসএস এবং সাসের মধ্যে পার্থক্যের জন্য, সাস ডকুমেন্টেশন পৃষ্ঠায় এই পাঠ্যের প্রশ্নের উত্তর দেওয়া উচিত:
সাসের জন্য দুটি সিনট্যাক্স উপলব্ধ। প্রথম, এসসিএসএস (স্যাসি সিএসএস) নামে পরিচিত এবং এই রেফারেন্স জুড়ে ব্যবহৃত, এটি সিএসএসের বাক্য গঠনটির একটি বর্ধিতাংশ। এর অর্থ হ'ল প্রতিটি বৈধ সিএসএস স্টাইলশিট একই অর্থ সহ একটি বৈধ এসএসএসএস ফাইল। এই সিনট্যাক্সটি নীচে বর্ণিত সাস বৈশিষ্ট্যগুলির সাথে বাড়ানো হয়েছে। এই সিনট্যাক্সটি ব্যবহার করে ফাইলগুলিতে .scss এক্সটেনশন রয়েছে।
দ্বিতীয় এবং পুরানো সিনট্যাক্স , যা ইনডেন্টড সিনট্যাক্স হিসাবে পরিচিত (বা কখনও কখনও কেবল "সাস"), সিএসএস লেখার আরও সংক্ষিপ্ত পথ সরবরাহ করে। এটি নির্বাচকদের বাসা বাঁধার জন্য ব্র্যাকেটগুলির পরিবর্তে ইন্ডেন্টেশন এবং সেমিকোলনগুলির পরিবর্তে পৃথক বৈশিষ্ট্যের পরিবর্তে নিউলাইনগুলি ব্যবহার করে। এই সিনট্যাক্স ব্যবহার করে ফাইলগুলিতে .াসাস এক্সটেনশন রয়েছে।
তবে, এই সবগুলি কেবল সাস প্রি-সংকলক দিয়ে কাজ করে যা শেষ পর্যন্ত সিএসএস তৈরি করে। এটি নিজে সিএসএস স্ট্যান্ডার্ডের কোনও এক্সটেনশন নয়।
scss
এবং sass
মাত্র ব্যক্তিগত পছন্দ বেশী এই দিন। scss
আরো অনেক কিছু প্রচলিত - মত সবচেয়ে জনপ্রিয় সিএসএস ফ্রেমওয়ার্ক ব্যবহার করা Bootstrap
, Foundation
, Materialize
ইত্যাদি প্রধান UI 'তে অবকাঠামো পক্ষপাতী scss
উপর sass
কৌণিক, প্রতিক্রিয়া দেখায়, Vue - ডিফল্ট দ্বারা। কোন টিউটোরিয়াল বা গণদেবতা সাধারণত ব্যবহার করা হবে scss
যেমন create-react-app
facebook.github.io/create-react-app/docs/...
আমি বিকাশকারীদের একজন যারা সাস তৈরি করতে সহায়তা করেছিল।
পার্থক্যটি ইউআই। পাঠ্য বহির্মুখের নীচে তারা অভিন্ন। এই কারণেই স্যাস এবং এসএসএস ফাইলগুলি একে অপরকে আমদানি করতে পারে। আসলে, সাসের চারটি সিনট্যাক্স পার্সার রয়েছে: স্কেস, সাস, সিএসএস এবং আরও কম। এগুলির সমস্ত একটি আলাদা সিনট্যাক্সকে একটি অ্যাবস্ট্রাক্ট সিনট্যাক্স ট্রিতে রূপান্তর করে যা সিএসএস আউটপুটে বা এমনকি স্যাস-রূপান্তর সরঞ্জামের মাধ্যমে অন্য কোনও ফর্ম্যাটে রূপান্তরিত হয়।
আপনার পছন্দ মতো সিনট্যাক্সটি ব্যবহার করুন, উভয়ই সম্পূর্ণরূপে সমর্থিত এবং আপনি যদি নিজের মতামত পরিবর্তন করেন তবে পরে তাদের মধ্যে পরিবর্তন করতে পারেন।
সাস .sass
ফাইলটি .scss
ফাইলের থেকে দৃশ্যত পৃথক , যেমন
$color: red
=my-border($color)
border: 1px solid $color
body
background: $color
+my-border(green)
$color: red;
@mixin my-border($color) {
border: 1px solid $color;
}
body {
background: $color;
@include my-border(green);
}
কোন যথাযথ CSS সমর্থন করে ডকুমেন্ট কেবল থেকে এক্সটেনশন পরিবর্তন করে Sassy সিএসএস (SCSS) এর পরিবর্তিত করা যায় .css
করতে .scss
।
.scss
করতে .css
হিসাবে একই .css
থেকে .scss
?
.css
বৈধ হতে পারে .scss
। আপনি এসএসএস নির্দিষ্ট কোড যুক্ত করার সাথে সাথেই ফাইলের নাম ফিরে পরিবর্তন করা অবৈধ সিএসএস ফাইল হিসাবে শেষ হবে। css
একটি বর্গক্ষেত্র, এবং scss
একটি আয়তক্ষেত্র হয়। সমস্ত স্কোয়ার আয়তক্ষেত্রাকার তবে সমস্ত আয়তক্ষেত্রগুলি বর্গক্ষেত্র নয়।
সাস ( সিনট্যাকটিক্যালি অসাধারণ স্টাইলশিট ) এর দুটি সিনট্যাক্স রয়েছে:
সুতরাং তারা দুটি ভিন্ন সম্ভাব্য বাক্য গঠন সহ সাস প্রিপ্রোসেসরের অংশ।
এসসিএসএস এবং মূল সাসের মধ্যে সর্বাধিক গুরুত্বপূর্ণ পার্থক্য :
এসসিএসএস :
সিনট্যাক্স CSS এর অনুরূপ (এত বেশি যে প্রতিটি নিয়মিত বৈধ CSS3 বৈধ এসএসএসএসও হয় , তবে অন্য দিকের সম্পর্ক স্পষ্টতই ঘটে না)
ধনুর্বন্ধনী ব্যবহার করে {}
;
:
@mixin
নির্দেশ ব্যবহার করে@include
নির্দেশের আগে এটির আগেআসল সাস :
=
পরিবর্তে অ্যাসাইনমেন্ট সাইন:
=
সাইন ব্যবহার করে+
সাইন দিয়ে থাকেকেউ কেউ সাসকে পছন্দ করেন , মূল বাক্য গঠন - অন্যরা এসসিএসএসকে পছন্দ করেন । যে কোনও উপায়ে, তবে এটি লক্ষণীয় যে সাসের ইনডেন্টড সিনট্যাক্সটি কখনও হয়নি এবং কখনও হ্রাস পাবে না ।
সাস- রূপান্তর সহ রূপান্তরসমূহ :
# Convert Sass to SCSS
$ sass-convert style.sass style.scss
# Convert SCSS to Sass
$ sass-convert style.scss style.sass
এর বাক্য গঠনটি ভিন্ন, এবং এটিই প্রধান সমর্থক (বা আপনার দৃষ্টিভঙ্গির উপর নির্ভর করে কন)।
আমি অন্যরা যা বলেছিল তার অনেকগুলি পুনরাবৃত্তি না করার চেষ্টা করব, আপনি সহজেই এটি গুগল করতে পারেন তবে পরিবর্তে, আমি উভয় ব্যবহার করে আমার অভিজ্ঞতা থেকে বেশ কয়েকটি জিনিস বলতে চাই, এমনকি কখনও কখনও একই প্রকল্পেও।
SASS প্রো
.sass
করা অনেক সহজ ' 'এবং .scss
( পাঠযোগ্য ) এর চেয়ে পঠনযোগ্য ।SASS কনস
body color: red
এসএসএস-এর মতো করতে পারবেন নাbody {color: red}
.scss
ফাইল রয়েছে ( .sass
ফাইলগুলির সাথে) বা সেগুলিতে রূপান্তর করা .sass
।এগুলি বাদে - তারা একই কাজ করে।
এখন, আমি যা করতে চাই তা হল কোডগুলিতে মিক্সিন এবং ভেরিয়েবলগুলি লিখুন .sass
যা .scss
সম্ভব হলে সিএসএসে আসলে সংকলিত হবে (যেমন ভিজ্যুয়াল স্টুডিওর সমর্থন নেই .sass
তবে যখনই আমি রেল প্রকল্পগুলিতে কাজ করি আমি সাধারণত তাদের দুটি সংযুক্ত করি, না এক ফাইলের মধ্যে)।
ইদানীং, আমি স্টাইলাসকে একটি সুযোগ দেওয়ার বিষয়টি বিবেচনা করছি (পুরো সময়ের সিএসএস প্রিপ্রোসেসরের জন্য) কারণ এটি আপনাকে একটি ফাইলে দুটি সিনট্যাক্স যুক্ত করতে দেয় (কিছু অন্যান্য বৈশিষ্ট্যগুলির মধ্যে)। এটি কোনও দলের পক্ষে নেওয়া ভাল দিকনির্দেশ নাও হতে পারে তবে আপনি যখন এটি একা বজায় রাখছেন - ঠিক আছে। সিনট্যাক্স প্রশ্নে থাকলে স্টাইলাসটি আসলে সবচেয়ে নমনীয়।
.scss
বনাম .sass
সিনট্যাক্স তুলনার জন্য ফাইনাল মিক্সিন :
// SCSS
@mixin cover {
$color: red;
@for $i from 1 through 5 {
&.bg-cover#{$i} { background-color: adjust-hue($color, 15deg * $i) }
}
}
.wrapper { @include cover }
// SASS
=cover
$color: red
@for $i from 1 through 5
&.bg-cover#{$i}
background-color: adjust-hue($color, 15deg * $i)
.wrapper
+cover
ভাষার হোমপেজ থেকে
সাসের দুটি সিনট্যাক্স রয়েছে। নতুন মূল সিনট্যাক্স (সাস 3 হিসাবে) "এসসিএসএস" ("স্যাসি সিএসএস" এর জন্য) নামে পরিচিত , এবং এটি CSS3 এর সিনট্যাক্সের একটি সুপারসেট। এর অর্থ হ'ল প্রতিটি বৈধ CSS3 স্টাইলশিট বৈধ এসএসএসএসও। এসসিএসএস ফাইলগুলি এক্সটেনশন .scss ব্যবহার করে।
দ্বিতীয়টি, পুরানো বাক্য গঠনটি ইনডেন্টড সিনট্যাক্স (বা কেবল "স্যাস") হিসাবে পরিচিত। হামলের তীক্ষ্ণতা দ্বারা অনুপ্রাণিত, এটি সিএসএসের সাথে মিলের চেয়ে সংক্ষিপ্ততা পছন্দ করে এমন লোকদের উদ্দেশ্যে। বন্ধনী এবং সেমিকোলনের পরিবর্তে, এটি ব্লকগুলি নির্দিষ্ট করতে লাইনগুলির ইন্ডেন্টেশন ব্যবহার করে। যদিও এখন আর প্রাথমিক সিনট্যাক্স নেই, ইন্টেন্টেড সিনট্যাক্স সমর্থন করা অবিরত থাকবে। ইন্টেন্টেড সিনট্যাক্সের ফাইলগুলি এক্সটেনশন .sass ব্যবহার করে।
এসএএসএস একটি ব্যাখ্যাযুক্ত ভাষা যা সিএসএসকে আলাদা করে দেয়। সাসের গঠনটি সিএসএসের মতো দেখতে (দূরবর্তীভাবে), তবে আমার কাছে মনে হচ্ছে বর্ণনাটি কিছুটা বিভ্রান্তিকর; এটা না CSS এর জন্য একটি প্রতিস্থাপন, অথবা একটি এক্সটেনশন। এটি এমন একটি দোভাষী যা শেষ পর্যন্ত সিএসএসকে আলাদা করে দেয়, সুতরাং সাসের এখনও সাধারণ সিএসএসের সীমাবদ্ধতা রয়েছে তবে এটি তাদের সহজ কোড সহ মুখোশ করে।
মূল পার্থক্যটি সিনট্যাক্স। এসএএসএস-এর সাদা স্থান এবং কোনও সেমিকোলন নেই এমন একটি শিথিল বাক্য গঠন রয়েছে, এসসিএসএস-এর CSS এর সাথে সাদৃশ্য রয়েছে।
SASS এর অর্থ সিন্ট্যাকটিক্যালি অসাধারণ স্টাইলশিট। এটি সিএসএসের একটি এক্সটেনশন যা মূল ভাষায় শক্তি এবং কমনীয়তা যুক্ত করে। এসএএসএস-কে নতুন কিছু নাম দিয়ে এসসিএসএস হিসাবে নতুন নাম দেওয়া হয়েছে তবে পুরানো এসএএসএসও সেখানে রয়েছে। আপনি এসসিএসএস বা এসএএসএস ব্যবহার করার আগে নীচের পার্থক্যটি দেখুন।
কিছু এসসিএসএস এবং এসএএসএস সিনট্যাক্সের উদাহরণ:
SCSS
$font-stack: Helvetica, sans-serif;
$primary-color: #333;
body {
font: 100% $font-stack;
color: $primary-color;
}
//Mixins
@mixin transform($property) {
-webkit-transform: $property;
-ms-transform: $property;
transform: $property;
}
.box { @include transform(rotate(30deg)); }
Sass
$font-stack: Helvetica, sans-serif
$primary-color: #333
body
font: 100% $font-stack
color: $primary-color
//Mixins
=transform($property)
-webkit-transform: $property
-ms-transform: $property
transform: $property
.box
+transform(rotate(30deg))
সংকলনের পরে আউটপুট সিএসএস (উভয়ের ক্ষেত্রে একই)
body {
font: 100% Helvetica, sans-serif;
color: #333;
}
//Mixins
.box {
-webkit-transform: rotate(30deg);
-ms-transform: rotate(30deg);
transform: rotate(30deg);
}
আরও গাইডের জন্য আপনি অফিসিয়াল ওয়েবসাইট দেখতে পারেন ।
সাস প্রথম ছিলেন এবং বাক্য গঠনটি কিছুটা আলাদা। উদাহরণস্বরূপ, একটি মিশিন সহ:
Sass: +mixinname()
Scss: @include mixinname()
সাস কোঁকড়া বন্ধনী এবং সেমিকোলন উপেক্ষা করে বাসা বাঁধে, যা আমি আরও দরকারী বলে মনে করি।
SASS এবং এসসিএসএস নিবন্ধের মধ্যে পার্থক্য বিশদগুলির পার্থক্যটি ব্যাখ্যা করে। এসএএসএস এবং এসসিএসএস বিকল্পগুলির দ্বারা বিভ্রান্ত হবেন না, যদিও আমিও প্রাথমিকভাবে ছিলাম।
যদি তা বোঝা না যায় তবে আপনি নীচের কোডের মধ্যে পার্থক্য দেখতে পাবেন।
/* SCSS */
$blue: #3bbfce;
$margin: 16px;
.content-navigation {
border-color: $blue;
color: darken($blue, 9%);
}
.border {
padding: $margin / 2; margin: $margin / 2; border-color: $blue;
}
উপরের কোডে আমরা ব্যবহার করি; ঘোষণা পৃথক। আমি এমনকি এই বিন্দুটি আরও চিত্রিত করার জন্য। সীমান্তের জন্য সমস্ত ঘোষণা যুক্ত করেছি। বিপরীতে, নীচের SASS কোড অবশ্যই ইনডেন্টেশন সহ বিভিন্ন লাইনে থাকতে হবে এবং এর কোনও ব্যবহার নেই।
/* SASS */
$blue: #3bbfce
$margin: 16px
.content-navigation
border-color: $blue
color: darken($blue, 9%)
.border
padding: $margin / 2
margin: $margin / 2
border-color: $blue
আপনি নীচের সিএসএস থেকে দেখতে পাচ্ছেন যে এসএসএসএস স্টাইলটি পুরানো এসএএসএস পদ্ধতির চেয়ে নিয়মিত সিএসএসের সাথে অনেক বেশি অনুরূপ।
/* CSS */
.content-navigation {
border-color: #3bbfce;
color: #2b9eab;
}
.border {
padding: 8px;
margin: 8px;
border-color: #3bbfce;
}
আমি মনে করি আজকাল বেশিরভাগ সময় যদি কেউ উল্লেখ করে যে তারা সাসের সাথে কাজ করছে তারা theতিহ্যবাহী .সাসাসের পরিবর্তে .scss লেখার কথা উল্লেখ করছেন।
মূল sass
হ'ল রুবি সিনড্যাক্সের মতো, রুবি, জেড ইত্যাদির মতো ...
এই বাক্য গঠনগুলিতে, আমরা ব্যবহার করি না {}
, পরিবর্তে আমরা সাদা স্পেস নিয়ে যাই, এছাড়াও এর ব্যবহারও করি না ;
...
ইন scss
syntaxes আরো ভালো হয় CSS
, কিন্তু মত আরও বিকল্প পেয়ে সঙ্গে পাখির, প্রকাশক, ইত্যাদি অনুরূপ less
এবং অন্যান্য প্রাক প্রক্রিয়াকরণ CSS
...
তারা মূলত একই জিনিস করে, কিন্তু আমি সিনট্যাক্স পার্থক্য, তাকান দেখতে প্রতিটি লাইনের কয়েক করা {}
, ;
এবং spaces
:
Sass:
$width: 100px
$color: green
div
width: $width
background-color: $color
SCSS:
$width: 100px;
$color: green;
div {
width: $width;
background-color: $color;
}
কমপ্যাক্ট উত্তর:
এসসিএসএস সাস সিএসএস প্রি-প্রসেসর দ্বারা সমর্থিত মূল সিনট্যাক্সকে বোঝায় ।
.scss
সাস দ্বারা সমর্থিত স্ট্যান্ডার্ড সিনট্যাক্সের প্রতিনিধিত্ব করে। এসসিএসএস হ'ল সিএসএসের সুপারস্টার et.sass
রুবি বিশ্বে উত্পন্ন সাস দ্বারা সমর্থিত "পুরানো" সিনট্যাক্সকে উপস্থাপন করে।এসএএসএস সিন্ট্যাকটিক্যালি অসাধারণ স্টাইল শিট এবং এটি সিএসএসের একটি বর্ধন যা নেস্টেড বিধি, উত্তরাধিকার, মিক্সিনের বৈশিষ্ট্য সরবরাহ করে যেখানে এসসিএসএস হ'ল স্যাসি ক্যাসকেড স্টাইল শীট যা সিএসএসের অনুরূপ এবং সিএসএস এবং এসএএসএসের মধ্যে ফাঁক এবং অসম্পূর্ণতা পূরণ করে। এটি এমআইটির লাইসেন্সের আওতায় লাইসেন্স ছিল। এই নিবন্ধটি পার্থক্য সম্পর্কে আরও রয়েছে: https://www.educba.com/sass-vs-scss/