国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

CSS、Sass、Scss,以及sass和scss的區(qū)別

caozhijian / 3648人閱讀

摘要:即元素脫離文檔流的布局,在頁面的任意位置顯示絕對(duì)定位脫離文檔流的布局,遺留下來的空間由后面的元素填充。相對(duì)定位不脫離文檔流的布局,只改變自身的位置,在文檔流原先的位置遺留空白區(qū)域。

1、描述

CSS 指層疊樣式表 (Cascading Style Sheets)

Sass (Syntactically Awesome StyleSheets),是由buby語言編寫的一款css預(yù)處理語言,和html一樣有嚴(yán)格的縮進(jìn)風(fēng)格,和css編寫規(guī)范有著很大的出入,是不使用花括號(hào)和分號(hào)的,所以不被廣為接受。 Sass 是一款強(qiáng)化 CSS 的輔助工具,是對(duì) CSS 的擴(kuò)展,它在 CSS 語法的基礎(chǔ)上增加了變量 (variables)、嵌套 (nested rules)、混合 (mixins)、繼承(extend)、導(dǎo)入 (inline imports) 等高級(jí)功能,這些拓展令 CSS 更加強(qiáng)大與優(yōu)雅。使用 Sass 以及 Sass 的樣式庫(如 Compass)有助于更好地組織管理樣式文件,以及更高效地開發(fā)項(xiàng)目, 其后綴是.sass。

SCSS (Sassy CSS),一款css預(yù)處理語言,SCSS 是 Sass 3 引入新的語法,其語法完全兼容 CSS3,并且繼承了 Sass 的強(qiáng)大功能。也就是說,任何標(biāo)準(zhǔn)的 CSS3 樣式表都是具有相同語義的有效的 SCSS 文件。SCSS 需要使用分號(hào)和花括號(hào)而不是換行和縮進(jìn)。SCSS 對(duì)空白符號(hào)不敏感,其實(shí)就和css3語法一樣,其后綴名是分別為 .scss。

2、css

以下是部門常用知識(shí)點(diǎn):

CSS的書寫方式
    行內(nèi)式:將CSS代碼書寫在HTML標(biāo)簽的style屬性中。style是一個(gè)通用屬性,每一個(gè)標(biāo)簽里面都擁有這個(gè)屬性,規(guī)則:
                                                        <標(biāo)簽名  style=”屬性:值;屬性:值;”>
    嵌入式:將CSS代碼嵌入到HTML文件中,嵌入式是通過HTML中的
   外鏈?zhǔn)剑簩懸?css擴(kuò)展名的文件,然后在標(biāo)簽中使用標(biāo)簽,將css文件鏈接到html文件中,規(guī)則:
                                                             <標(biāo)簽名  style=”屬性:值;屬性:值;”>
選擇器
      元素選擇器、id選擇器、類選擇器、
      屬性選擇器(如為帶有 title 屬性的所有元素設(shè)置樣式 [title] {somestyles} )、
      屬性和值選擇器(如為帶有 title="hello title" 的所有元素設(shè)置樣式 [title=W3School] {somestyles} )、
      派生選擇器(通過依據(jù)元素在其位置的上下文關(guān)系來定義樣式),有三種
          后代選擇器:    空格隔開;
          子元素選擇器:  >隔開,只能選擇作為某元素子元素的元素;
          相鄰兄弟選擇器:選擇緊接在一元素后的元素,且二者有相同父元素,
                         如設(shè)置緊接 h1 后出現(xiàn)的 p 的字體顏色:h1 + p {color: red;};
          注1:.a,.b該逗號(hào)表示存在其中一個(gè)類的元素就設(shè)置,多元選擇;
          注1:.a.b沒有空格表示同時(shí)擁有兩個(gè)類的元素。                           
盒子模型
       所有HTML元素可以看作盒子,CSS盒模型本質(zhì)上是一個(gè)盒子,封裝周圍的HTML元素,
       它包括:margin(外邊距)、border(邊框)、padding(內(nèi)邊距)、content(內(nèi)容)
       盒模型允許我們?cè)谄渌睾椭車剡吙蛑g的空間放置元素。
定位
      Position屬性:規(guī)定元素的定位類型。即元素脫離文檔流的布局,在頁面的任意位置顯示
      absolute: 絕對(duì)定位;脫離文檔流的布局,遺留下來的空間由后面的元素填充。
                 定位的起始位置為最近的父元素(postion不為static),否則為Body文檔本身。
      relative :相對(duì)定位;不脫離文檔流的布局,只改變自身的位置,在文檔流原先的位置遺留空白區(qū)域。
                 定位的起始位置為此元素原先在文檔流的位置。
      fixed :固定定位;類似于absolute,但不隨著滾動(dòng)條的移動(dòng)而改變位置。
      static :默認(rèn)值;默認(rèn)布局.
      輔助屬性:position屬性只是使元素脫離文檔流,要想此元素能按照希望的位置顯示,
               需要使用下面的屬性(position:static不支持這些):
                ①left : 表示向元素的左邊插入多少像素,使元素向右移動(dòng)多少像素。
                ②right :表示向元素的右邊插入多少像素,使元素向左移動(dòng)多少像素。
                ③top :表示向元素的上方插入多少像素,使元素向下移動(dòng)多少像素。
                ④bottom :表示向元素的下方插入多少像素,使元素向上移動(dòng)多少像素。
                注:上面屬性的值可以為負(fù),單位:px 。
               
布局

(省略......)

3、sass、scss、和css的關(guān)系 css預(yù)處理器
css預(yù)處理器是用一種專門的語言,進(jìn)行網(wǎng)頁的樣式設(shè)計(jì),之后在被編譯為正常的css文件,以供項(xiàng)目使用。使用css預(yù)處理語言的好處:是css更加簡(jiǎn)潔、方便修改、可讀性強(qiáng)、適應(yīng)新強(qiáng)并且更易于代碼的維護(hù)。
css和sass的關(guān)系
sass是由buby語言編寫的一款css預(yù)處理語言,和html一樣有嚴(yán)格的縮進(jìn)風(fēng)格,和css編寫規(guī)范有著很大的出入,是不使用花括號(hào)和分號(hào)的,所以不被廣為接受。
scss和css的關(guān)系
 SCSS 和 CSS 寫法無差別,這也是 Sass 后來越來越受大眾喜歡原因之一。簡(jiǎn)單點(diǎn)說,把你現(xiàn)有的“.css”文件直接修改成“.scss”即可使用。
sass和scss的關(guān)系
sass和scss其實(shí)是一樣的css預(yù)處理語言,SCSS 是 Sass 3 引入新的語法,其后綴名是分別為 .sass和.scss兩種。
SASS版本3.0之前的后綴名為.sass,而版本3.0之后的后綴名.scss。
兩者是有不同的,繼sass之后scss的編寫規(guī)范基本和css一致,sass時(shí)代是有嚴(yán)格的縮進(jìn)規(guī)范并且沒有‘{}’和‘;’。
而scss則和css的規(guī)范是一致的。
示例代碼
        // sass
        #sidebar
          width: 30%
          background-color: #faa
        // scss
        #sidebar {
          width: 30%;
          background-color: #faa;
        }
4、sass
直接跳過
5、scss scss 注釋
        多行注釋?-?這些使用?/**/?寫入。多行注釋都保留在CSS輸出。
        單行注釋?-?這些是使用 // 跟著注釋。單行注釋不會(huì)保留在CSS輸出。
變量
$ 符號(hào)來標(biāo)識(shí)變量;把反復(fù)使用的css屬性值定義成變量;

$highlight-color: #F90;
$highlight-border: 1px solid $highlight-color; // 變量中可存在變量

$link-color: blue;
a {
  color: $link_color; // 中劃線和下劃線等價(jià),包括對(duì)混合器和Sass函數(shù)的命名
}

$side : left;
.rounded {
  border-#{$side}-radius: 5px; // 如果變量需要鑲嵌在字符串之中,就必須需要寫在#{}之中。
}

$nav-color: #F90;// 當(dāng)前樣式表都可以使用
nav {
  $width: 100px; // 只有nav{}里面才可以使用,當(dāng)前樣式表其他地方可以重復(fù)定義和使用
  width: $width;
  color: $nav-color;
}
//編譯后
nav {
  width: 100px;
  color: #F90;
}
嵌套
選擇器嵌套
#content {
  article {
    h1 { color: #333 }
    p { margin-bottom: 1.4em }
  }
  aside { background-color: #EEE }
}
 /* 編譯后 */
#content article h1 { color: #333 }
#content article p { margin-bottom: 1.4em }
#content aside { background-color: #EEE }

屬性也可以嵌套,比如border-color屬性,可以寫成:
p {
    border: {   // 注意,border后面必須加上冒號(hào)。
        color: red;
    }
}

在嵌套的代碼塊內(nèi),可以使用&引用父元素。比如a:hover偽類,可以寫成
a {
    &:hover { color: #ffb3ff; } }
計(jì)算功能
所有數(shù)據(jù)類型均支持相等運(yùn)算 == 或 !=,此外,每種數(shù)據(jù)類型也有其各自支持的運(yùn)算方式。

數(shù)字運(yùn)算: 支持?jǐn)?shù)字的加減乘除、取整等運(yùn)算 (+, -, *, /, %)
$var: 20px;
body {
  margin: (14px/2);
  top: 50px + 100px;
  right: $var * 10%;}

字符串運(yùn)算: + 可用于連接字符串
注意,如果有引號(hào)字符串(位于 + 左側(cè))連接無引號(hào)字符串,運(yùn)算結(jié)果是有引號(hào)的,
相反,無引號(hào)字符串(位于 + 左側(cè))連接有引號(hào)字符串,運(yùn)算結(jié)果則沒有引號(hào)
p {cursor: e + -resize;} //編譯后 p {cursor: e-resize; }
p:before { 
    content: "Foo " + Bar;  
    font-family: sans- + "serif";}
// 編譯為
p:before {
  content: "Foo Bar";
  font-family: sans-serif; }
代碼的重用 繼承
繼承是基于類class的(有時(shí)是基于其他類型的選擇器)
允許一個(gè)選擇器,繼承另一個(gè)選擇器。比如,現(xiàn)有class1:
.class1 {
border: 1px solid #ffffd;}

// class2要繼承class1,就要使用@extend命令:

.class2 {
     @extend .class1;
     font-size:120%;
 }
混合器 Mixin
避免不停地重復(fù)一段樣式
   // 使用@mixin命令,定義一個(gè)代碼塊。
  @mixin left {
    float: left;
    margin-left: 10px;
  }
    //使用@include命令,調(diào)用這個(gè)mixin。
  div {
    @include left;
  }
  
  // mixin的強(qiáng)大之處,在于可以指定參數(shù)和缺省值。
  @mixin left($value: 10px) {
      float: left;
      margin-right: $value;
  }
    // 使用的時(shí)候,根據(jù)需要加入?yún)?shù):
  div {
    @include left(20px);
  }
插入文件
Sass 拓展了 @import 的功能,允許其導(dǎo)入 SCSS 或 Sass 文件。被導(dǎo)入的文件將合并編譯到同一個(gè) CSS 文件中,另外,被導(dǎo)入的文件中所包含的變量或者混合指令 (mixin) 都可以在導(dǎo)入的文件中使用。
    @import "foo.scss"; //都會(huì)導(dǎo)入文件 foo.scss
    @import "foo"; //都會(huì)導(dǎo)入文件 foo.scss
    @import "http://foo.com/bar";  // 插入外部文件
    @import "foo.css"; // 等同于css的import命令。
    
高級(jí)用法
比如控制指令,條件語句、循環(huán)語句、自定義函數(shù)等,這部分就不列出來了。
scss總結(jié)
這里只是簡(jiǎn)單介紹 scss 最基本部分,使用 scss 可以編寫清晰、無冗余、語義化的 css。

變量是 scss 提供的最基本的工具。通過變量可以讓獨(dú)立的 css 值變得可重用,無論是在一條多帶帶的規(guī)則范圍內(nèi)還是在整個(gè)樣式表中。

變量、混合器的命名甚至 scss 的文件名,可以互換通用_和-。

同樣基礎(chǔ)的是 scss 的嵌套機(jī)制。嵌套允許css規(guī)則內(nèi)嵌套css規(guī)則,減少重復(fù)編寫常用的選擇器,同時(shí)讓樣式表的結(jié)構(gòu)一眼望去更加清晰。scss同時(shí)提供了特殊的父選擇器標(biāo)識(shí)符 & ,通過它可以構(gòu)造出更高效的嵌套。

混合器允許用戶編寫語義化樣式的同時(shí)避免視覺層面上樣式的重復(fù)。使用混合器減少重復(fù),使用混合器讓你的css變得更加可維護(hù)和語義化。

與混合器相輔相成的選擇器繼承。繼承允許你聲明類之間語義化的關(guān)系,通過這些關(guān)系可以保持你的css的整潔和可維護(hù)性。

樣式導(dǎo)入,scss 的另一個(gè)重要特性。通過樣式導(dǎo)入可以把分散在多個(gè)sass文件中的內(nèi)容合并生成到一個(gè)css文件,避免了項(xiàng)目中有大量的css文件通過原生的css @import帶來的性能問題。通過嵌套導(dǎo)入和默認(rèn)變量值,導(dǎo)入可以構(gòu)建更強(qiáng)有力的、可定制的樣式。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/114884.html

相關(guān)文章

  • Sass/SCSS】預(yù)加載器中“軒轅劍”

    摘要:預(yù)加載器中的軒轅劍,這也不是我?guī)退担撬约赫f的,下圖為例。是由語言編寫的一款預(yù)處理語言,有嚴(yán)格的縮進(jìn)風(fēng)格。指令將文件包含在中,不需要額外的請(qǐng)求。語法指令告訴一個(gè)選擇器的樣式從另一選擇器繼承。【Sass/SCSS】預(yù)加載器中的軒轅劍博客說明文章所涉及的資料來自互聯(lián)網(wǎng)整理和個(gè)人總結(jié),意在于個(gè)人學(xué)習(xí)和經(jīng)驗(yàn)匯總,如有什么地方侵權(quán),請(qǐng)聯(lián)系本人刪除,謝謝!說明隨著前端技術(shù)發(fā)展的越來越迅速,前端的樣式...

    cnsworder 評(píng)論0 收藏0
  • SASS學(xué)習(xí)記錄

    摘要:前言很久沒有用文章記錄自己的學(xué)習(xí)歷程了,主要是因?yàn)閷?shí)在寫的不行,相比大牛寫的博客,我這只能算是東拼西湊或者說是讀書筆記。以前我只使用外部,現(xiàn)在的更加好用,所以在學(xué)習(xí)過程中記了一些筆記。在后面加一個(gè)感嘆號(hào),表示這是重要注釋。 前言 很久沒有用文章記錄自己的學(xué)習(xí)歷程了,主要是因?yàn)閷?shí)在寫的不行,相比大牛寫的博客,我這只能算是東拼西湊或者說是讀書筆記。但是今天還是拾起筆來了,雖然沒什么干貨,但...

    tylin 評(píng)論0 收藏0
  • SASS學(xué)習(xí)記錄

    摘要:前言很久沒有用文章記錄自己的學(xué)習(xí)歷程了,主要是因?yàn)閷?shí)在寫的不行,相比大牛寫的博客,我這只能算是東拼西湊或者說是讀書筆記。以前我只使用外部,現(xiàn)在的更加好用,所以在學(xué)習(xí)過程中記了一些筆記。在后面加一個(gè)感嘆號(hào),表示這是重要注釋。 前言 很久沒有用文章記錄自己的學(xué)習(xí)歷程了,主要是因?yàn)閷?shí)在寫的不行,相比大牛寫的博客,我這只能算是東拼西湊或者說是讀書筆記。但是今天還是拾起筆來了,雖然沒什么干貨,但...

    HollisChuang 評(píng)論0 收藏0
  • 前端入門23-CSS預(yù)處理器(Less&Sass

    摘要:聲明聲明本篇內(nèi)容梳理自以下幾個(gè)來源網(wǎng)站的文檔中文網(wǎng)感謝大佬們的分享。這個(gè)時(shí)候,預(yù)處理器就出現(xiàn)了,其實(shí)應(yīng)該是說和這類語言出現(xiàn)了。聲明 本篇內(nèi)容梳理自以下幾個(gè)來源: Github:smyhvae/web Bootstrap網(wǎng)站的 less 文檔 Sass中文網(wǎng) 感謝大佬們的分享。 正文-CSS預(yù)處理(less&Sass) CSS預(yù)處理 什么是 CSS 預(yù)處理?為什么要有 CSS 預(yù)處理? 這...

    freecode 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<