CSS基礎學習第二章

本篇文章適合基礎薄弱想籠統學習的童靴們,因為我就是從零自學開始的,把我學習中常用到的知識點整理一下以后常常溫故一下。

案例地址: https://github.com/pengjunshan/WebPJS/HtmlCss

其它Web文章
HtmlCss基礎學習第一章
CSS浮動的使用和解決浮動的五種方法
CSS定位relative、absolute、fixed使用總結
原生開發WebApi知識點總結
開發中常用jQuery知識點總結
C3動畫+H5+Flex布局使用總結
ES6常用知識總結
Vue學習知識總結
開發環境到生產環境配置webpack
待續......

本編文章會講到的知識點
  • 引入CSS樣式表
  • 標簽顯示模式
  • CSS復合選擇器
  • CSS 背景(background)
  • CSS 三大特性
  • 盒子模型
引入CSS樣式表
行內式(內聯樣式)

通過 標簽style屬性 設置樣式。
語法中,style是標簽的屬性,屬性和值的書寫規范與CSS相同,行內式只對 其所在的標簽 及嵌套在其中的子標簽起作用。

<標簽名 style="屬性1:屬性值1; 屬性2:屬性值2; 屬性3:屬性值3;"> 內容 </標簽名>
內嵌式(內部樣式表)

內嵌式是將CSS代碼集中寫在HTML文檔的head頭部標簽中,并且用style標簽定義。語法中,style標簽一般位于head標簽中title標簽之后,也可以把他放在HTML文檔的任何地方。

 <head>
<style type="text/CSS">
   選擇器 {屬性1:屬性值1; 屬性2:屬性值2; 屬性3:屬性值3;}
</style>
</head>
外鏈式(外部樣式表)

鏈入式是將所有的樣式放在一個或多個以.CSS為擴展名的外部樣式表文件中,通過link標簽將外部樣式表文件鏈接到HTML文檔中

<head>
  <link href="CSS文件的路徑" type="text/CSS" rel="stylesheet" />
</head>
三種樣式表總結
樣式表 優點 缺點 使用情況 控制范圍
行內式 書寫方便 權重高 沒有實現樣式和結構相分離 較少 控制一個標簽(少)
內嵌式 一定程度的實現了 結構樣式分離 沒有徹底分離 較多 控制一個頁面(中)
外鏈式 完全實現結構樣式分離 需要引入 最多,強烈推薦 可控制多個頁面(多)
CSS樣式表案例代碼
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        .inline-p {
            font-size: 30px; 
            height: 100px; 
            background-color: rgb(202, 184, 21)
        }
    </style>
</head>
<body>
    <p style="font-size: 30px; height: 100px; background-color: blue">我是行內式css</p>
    <p class="inline-p">我是內嵌式css</p>
    <p class="outside-p">我是外鏈式css</p>
</body>
</html>
標簽顯示模式(display)

在html中,元素主要分為行內元素和塊級元素、行內塊元素。

塊級元素(block-level)

每個塊元素通常都會獨自占據一整行,可設寬度、高度、對齊等,常用于網頁布局結構搭建。

常見的塊元素有<h1>~<h6>、<p>、<div>、<ul>、<ol>、<li>等,其中<div>標簽是最典型的塊元素。

塊級元素的特點:

  • 獨占一整行
  • 可設寬高,行高、外邊距以及內邊距都可設。
  • 寬度默認撐滿父級
  • 可以容納任何其他標簽
行內元素(inline-level)

行內元素(內聯元素)由內容撐開,一般不可以設置寬度、高度、對齊等屬性,常用于控制頁面中文本的樣式。

常見的行內元素有<a>、<strong>、<b>、<em>、<i>、<del>、<s>、<ins>、<u>、<span>等,
其中<span>標簽最典型的行內元素。

行內元素的特點:

  • 一行排多個。
  • 不能設寬高,但水平的padding和margin可以設置,垂直的無效。
  • 被內容撐開
  • 行內元素只能容納文本或則其他行內元素。(a特殊)

注意

  1. 只有 文字才 能組成段落,因此 p 里面不能放塊級元素,
    同理還有這些標簽h1,h2,h3,h4,h5,h6,dt,他們都是文字類塊級標簽,里面不能放其他塊級元素。
  2. 鏈接里面不能再放鏈接。

#######行內塊元素(inline-block)

在行內元素中有幾個特殊的標簽——<img>、<input>、<td>,

可以對它們設置寬高和對齊屬性,有些資料可能會稱它們為行內塊元素。

行內塊元素的特點:

  • 一行多個
  • 默認寬高內容撐開
  • 寬高,外邊距以及內邊距都可設
三種顯示模式轉換
  • 塊 => 行內 display: inline;
  • 行內 => 塊 display: block;
  • 行內 => 行內塊 display: inline-block;
標簽顯示模式案例代碼
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        div {
            height: 50px;
            width: 200px;
            background-color: pink;
            /* display:inline 轉成 行內元素*/
            display: inline;
        }
        .sp-block {
            width: 200px;
            height: 50px;
            background-color: rgb(23, 33, 179);         
            /* display:inline-block 可以轉成 行內塊元素 */
            display: inline-block;
        }
        .sp-inline{
            height: 50px;
            width: 100%;
            background-color: rgb(155, 22, 28); 
        /* display:block 轉成 塊級元素 */
            display: block;
        }
    </style>
</head>
<body>
    <div>我是div</div>
    <span class="sp-block">我是塊級span</span>
    <span class="sp-inline">我是行內span</span>
</body>
</html>
CSS復合選擇器

復合選擇器是由 兩個 或 多個基礎選擇器 組合而成的,目的是為了可以更準確的選擇目標元素。

交集選擇器

交集選擇器由兩個選擇器構成,兩個選擇器之間不能有空格。
交集選擇器 是 并且的意思,即...又...的意思。
必須兩個條件同時滿足,才能作用。
如果有 標簽選擇器 要放在最前面!

        /* 類名既有tall 又有mm */
        .tall.mm {
            background-color: red;
        }

        /* 首先是p標簽 并且類名是sg */
        p.sg{
            color: red
        }
并集選擇器

并集選擇器(CSS分組選擇器),逗號連接。
任何形式的選擇器(包括標簽選擇器、class類選擇器id選擇器等),都可以作為并集選擇器的一部分。
如果某些選擇器定義的樣式完全相同,或部分相同,就可以利用并集選擇器為它們定義相同的CSS樣式。
并集選擇器的意思, 就是說,只要逗號隔開的,所有選擇器都會執行后面樣式。

        /* 
        * p標簽選擇器 zxy類選擇器 gfc ID選擇器,
        * 這三個選擇器都會執行顏色為紅色 
        */
        p, .zxy, #gfc{
            color: red;
        }
后代選擇器

后代選擇器,用來選擇元素的后代。.father .son。
寫法就是把 外層標簽寫在前面,內層標簽寫在后面,中間用空格分隔。
子孫后代都可以選中。

        /* ul下子孫li都會變紅 */
        ul li {
            color: red;
        }
        /* ul下類名為other的li變黑 */
        ul li .other{
            color: #000000;
        }
子元素選擇器

子元素選擇器,只能 作用于 子元素。 父 > 子
規范:> 左右兩側各保留一個空格。
白話: 這里的子 指的是 親兒子 不包含孫子 重孫子之類。

    /* 
        * box下子一級(兒子)的p標簽才會變藍色,
        * 一級以下的都不會變(孫子) 
        */
        .box > p {
            color: blue;
        }
屬性選擇器

屬性選擇器可以根據元素的屬性及屬性值來選擇元素。

    /*  選擇器[屬性名] : 只要包含該屬性即可被選中; */
        li[type] {
                color: blue;
            }
        /* 
            選擇器[屬性名="屬性值"]: 
            屬性值必須完全相同才會被選中 */
            li[type="meat"] {
            color: red;
        }
        /* 
            選擇器[屬性名*="屬性值"]     
            只要包含該屬性值就可以被選中
        */          
            li[type*="hot"] {
                color: green;
            }   
        /*
            選擇器[屬性名^="val"]
            當該元素屬性值以這個 val 開頭時作用

            ^: 表示以 .... 開頭 ;
        */
            li[type^="dr"] {
                color: blue;
            }       
        /*
            $:表示以 ... 結尾
            選擇器[屬性名$="val"]
            當該元素屬性值 以 val 結尾時起作用
        */
        li[type$="t"] {
            color: red;
        }       
        /*
            找到 type,對屬性值進行分析,按照空格分隔匹配,
            必須與分隔出來的屬性值完全相等,才起作用
        */
        li[type~="hot"] {
            color: blue;
        }
        /* 跟 * 區別, *是只要包含,就能生效,不管有沒空格,不管什么位置 */

        /* 
            推測:
                先找 price,根據空格分隔所有的屬性值,
                中間只要有類似于 very 和 very- 就可以被選中
                可以選中 very  very-...  
                這是不對的
                
            結果:
                E[屬性|="val"]  必須以 val 開頭
                1. 只是 val 可以被選中
                2. val-...
        */
偽元素選擇器
  1. E::first-letter文本的第一個單詞或字(如中文、日文、韓文等)
  2. E::first-line 文本第一行;
  3. E::selection 可改變選中文本的樣式;
  4. E::before和E::after
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        /*
            選擇器::first-letter
            選中段落中的第一個字
        */
        p::first-letter {
            color: red;
            font-size: 50px;
            font-weight: bolder;
        }
        
        /*
            選擇器::first-line
            選中段落中的第一行
        */
        p::first-line {
            color: green;
        }
        
        /*
            選擇器::selection
            控制選中內容的樣式
        */
        p::selection {
            background-color: rgb(236, 19, 63);
            color: blue
        }
            /*
            選擇器::before
            可以給當前元素最前面 加 內容
            最關鍵屬性 content 不能少
        */

        p::before {
            content: "¥";
            height: 50px;
            width: 50px;
            display: inline-block;
            background-color: blue;
            background-image: url(08.gif);
        }

        /*
         選擇器::after
         可以給當前元素 最后面 添加 內容
         最關鍵屬性 content 不能少
         行內元素的效果
        */
        p::after {
            content: "------你個損塞";
        }
    </style>
</head>
<body>
    <p>
        英語詞匯,一般指即興的、隨性的隨意的發揮,例如HIPHOP說唱中的freestyle就是即興說唱的意思。2017年6月,因吳亦凡屢次提起而火遍網絡。 吳亦凡爆紅的freestyle,其實是嘻哈選手的基本功,也是《中國有嘻哈》節目中的一個環節名稱。 發展經過編輯 從吳亦凡口里說出來,freestyle就變得很魔性了,因為他見人都會問一句,你有freestyle嗎?兩個選手難以選擇,還是這句,“你們有freestyle嗎”?
    </p>    
</body>
</html>
CSS 背景(background)

CSS 可以添加背景顏色和背景圖片,以及來進行圖片設置。

  • 背景顏色: background-color
  • 背景圖片地址: background-image
  • 是否平鋪: background-repeat
  • 背景位置: background-position
  • 背景固定還是滾動: background-attachment
背景圖片(image)

語法:background-image : none | url (url)
參數:
none :  無背景圖(默認的)
url :  使用絕對或相對地址指定背景圖像
圖片覆蓋不到地地方都會被背景色填充。

背景平鋪(repeat)

語法:background-repeat : repeat | no-repeat | repeat-x | repeat-y
默認就是 repeat
參數:
repeat :  背景圖像在縱向和橫向上平鋪(默認的)
no-repeat :  背景圖像不平鋪
repeat-x :  背景圖像在橫向上平鋪
repeat-y :  背景圖像在縱向平鋪

背景位置(position)

語法:

  • background-position : length || length
  • background-position : position || position
    參數:
    length :  百分數 | 由浮點數字和單位標識符組成的長度值。請參閱長度單位
    position :  top | center | bottom | left | center | right
    說明:
    設置或檢索對象的背景圖像位置。必須先指定background-image屬性。默認值為:(0% 0%)。
    如果只指定了一個值,該值將用于橫坐標。縱坐標將默認為50%。第二個值將用于縱坐標。
    注意:
  1. position 后面是x坐標和y坐標。 可以使用方位名詞或者 精確單位。
  2. 如果和精確單位和方位名字混合使用,則必須是x坐標在前,y坐標后面。比如 background-position: 15px top; 則 15px 一定是 x坐標 top是 y坐標。
    實際工作用的最多的,就是背景圖片居中對齊了。
    background-position: center center;
背景附著

語法:background-attachment : scroll | fixed
參數:
scroll :  背景圖像是隨對象內容滾動
fixed :  背景圖像固定

背景簡寫

background 屬性值的書寫順序,沒有強制標準的。
但為了可讀性,建議大家如下寫:
background:背景顏色 背景圖片地址 背景平鋪 背景滾動 背景位置
background: transparent url(image.jpg) repeat-y scroll 50% 0 ;

背景透明

CSS3支持背景半透明的寫法語法格式是:
background: rgba(0,0,0,0.3);
最后一個參數是alpha 透明度 取值范圍 0~1之間
注意: 背景半透明是指盒子背景半透明, 盒子里面的內容不受影響。
同樣, 可以給 文字和邊框透明 都是 rgba 的格式來寫。
color:rgba(0,0,0,0.3);
border: 1px solid rgba(0,0,0,0.3);

背景縮放

通過background-size設置背景圖片的尺寸,就像我們設置img的尺寸一樣,在移動Web開發中做屏幕適配應用非常廣泛。
其參數設置如下:

  1. 可以設置長度單位(px) 或 百分比(設置百分比時,參照盒子的寬高)
  2. 設置為cover時,必須填滿。覆蓋整個父容器,不會失去原來的比例,按照原來比例撐滿整個父容器
  3. 設置為contain, 必須完整。必須保證原有比例的前提,進行盡可能的放大。默認會居中
  div {
          height: 400px;
          background: url("0 8.gif") no-repeat center top;
          background-color: rgba(0,0,0, 0.7);
          /* background-size: 100% 400px; */

          /*覆蓋整個父容器,不會失去原來的比例,按照原來比例撐滿整個父容器*/
          /* background-size: cover; */

          /* 必須保證原有比例的前提,進行盡可能的放大。默認會居中 */
          /* background-size: contain; */
      }
多背景

以逗號分隔可以設置多背景,可用于自適應布局
background-image: url('images/a.jpg'), url('images/b.png');

CSS 背景(background)案例代碼
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        div {
            height: 1000px;
            width: 100%;
            background-color: pink;
            background-image: url("0 8.gif");           
            background-repeat: no-repeat;
            background-attachment: fixed;   
            background-position: center center; 
            /*background 連寫*/
            background: pink url("0 8.gif") no-repeat fixed center center;
            /* 背景透明  */
            background: rgba(0,0,0, 0.5) url("0 8.gif") no-repeat fixed center center;
            /* 設置圖片大小 */
            background-size: contain;
        }

    </style>
</head>
<body>
    <div>       
    </div>
</body>
</html>
CSS 三大特性

CSS 三大特性:層疊性 繼承性 優先級

層疊性

層疊性 指 CSS樣式沖突產生的 疊加現象,出現樣式沖突,才會觸發層疊。

  1. 樣式沖突,就近原則。
  2. 樣式不沖突,不會層疊
繼承性

繼承性:子標簽 繼承 父標簽的某些樣式,如文本顏色和字號等。恰當地使用繼承可以簡化代碼,降低CSS樣式的復雜性。

哪些樣式可繼承?: text-,font-,line-開頭,以及color,可繼承

CSS優先級

兩個或更多規則應用于同一元素上,會出現優先級問題。

考慮權重時,應注意:

  1. 繼承權重為0。
  2. 行內優先。大于所有選擇器,小于!important
  3. 權重相同,就近原則。
  4. !important 最大優先級

CSS權重計算公式(0, 0, 0, 0) :

  1. !important 1,0,0,0
  2. id 選擇器 0,1,0,0
  3. 類選擇器,偽元素,偽類選擇器 0,0,1,0
  4. 標簽選擇器 0,0,0,1
  5. 行內樣式不參與權重計算,比選擇器大,比 !important小

發生樣式沖突時,比較權重:
先比第一個:誰大,優先級就高
第一個一樣,就比第二個:誰大,優先級就高
第二個一樣,就比第三個:誰大,優先級就高
第三個一樣,就比第四個:誰大,優先級就高
比完發現都一樣,權重相同,就近原則(層疊性)

注意:

  1. 繼承的 權重是 0。
  2. 基本優先級: !important > 行內樣式 > id選擇器 > 類選擇器 > 標簽選擇器 > 通配符選擇器 > 繼承
  3. 權重相同,就近原則
盒子模型

盒子模型就是把 頁面元素 看作是一個矩形的盒子。
每個盒子 由 內容(content)、內邊距(padding)、邊框(border)和外邊距(margin)四大部分組成。
每一個盒子都由四部分組成: content padding border margin。

盒子邊框(border)

設置盒子在外層的一層皮,可以設置皮的寬度、樣式、顏色。

語法:

border : border-width || border-style || border-color 
border: 1px solid red;

border-style 邊框樣式常用屬性:

  1. none:沒有邊框
  2. solid:單實線(常用)
  3. dashed:虛線
  4. dotted:點線
  5. double:雙實線

盒子邊框寫法總結:
上邊框: 
border-top-style 樣式
border-top-width 寬度
border-top-color 顏色
連寫:
border-top: 寬度 樣式 顏色
border-top: 1px solid blue;

下邊框 border-bottom-...
左邊框 border-left- ...
右邊框 border-right- ...

合并邊框border-collapse:

當邊框重疊時,會增加邊框的寬度、顏色重度。可以使用border-collapse屬性合并邊框。

border-collapse:collapse; //表示邊框合并在一起。

圓角邊框
語法:

border-radius: 左上  右上  右下  左下;
border-radius: **px;
border-radius: **%;
  1. 可以分別為左上 右上 右下 左下設置圓角。
  2. 可以簡寫一次性設置四條邊。
  3. 可以寫百分比。

內邊距(padding)

padding: 內邊距。 指 邊框與內容之間的距離。

  • padding-top:上內邊距
  • padding-right:右內邊距
  • padding-bottom:下內邊距
  • padding-left:左內邊距
  • padding: 上 右 下 左;

外邊距(margin)

margin屬性用于設置外邊距。設置外邊距會在元素之間創建“空白”, 這段空白通常不能放置其他內容。

  • margin-top: 上外邊距
  • margin-right: 右外邊距
  • margin-bottom:下外邊距
  • margin-left: 左外邊距
  • margin:上 右 下 左;

注意:

給行內元素  設置 垂直外邊距margin 會無效
所以不要給 行內 設 margin-top 和 margin-bottom
給行內元素 設置 垂直 內邊距 padding 也會有問題
所以不要給 行內 設 padding-top 和 padding-bottom

如果想設置上下內外邊距,先轉為塊級元素。

外邊距實現盒子居中

左右外邊距設 auto, 實現盒子水平居中

需要滿足兩個條件:

  1. 必須是塊級元素。
  2. 設了寬度(width)
.header{ width:660px; margin:0 auto;}

圖片在盒子中居中的兩種方式

  1. 方式一:父盒子,設置 text-align: center
  2. 方式二:轉成塊, display:block; 設寬 , margin: 0 auto;

文字盒子居中區別,圖片和背景區別

  1. 文字內容居中是 text-align: center
  2. 盒子居中 左右margin 改為 auto (塊級元素,要有寬度)
  3. 插入img,用的最多。比如產品展示類
  4. background-image 小圖標或者 超大背景可以用到

清除元素的默認內外邊距
為更方便控制網頁元素,可清除默認內外邊距:

* {
  padding:0;         /* 清除內邊距 */
  margin:0;          /* 清除外邊距 */
}

外邊距合并

margin定義 塊元素 垂直外邊距時,很可能出現 外邊距合并。

相鄰塊元素垂直外邊距的合并:

上下相鄰兩個塊元素相遇,若上面設margin-bottom,下面設  margin-top。
他們垂直間距不是  margin-bottom 與  margin-top 之和,而是較大者。

嵌套塊元素垂直外邊距的合并:

嵌套關系的塊元素,父元素 margin-top 可能會與子元素的 margin-top 合并,合并成較大者。
且子元素并沒和父元素 margin開。

解決方案:

  1. 為父元素定義 1px 的上邊框。
  2. 為父元素定義 1px 上內邊距。
  3. 父元素添加 overflow:hidden (觸發BFC 后再會講)。
  4. 浮動,定位(觸發BFC 后再會講)。

盒子實際寬度和高度

在頁面中占據的空間 margin + border + padding + content

注意:
1、width 和 height 對塊級有效,對行內無效( img 標簽和 input除外,因為他們是行內塊)。
2、計算總高度時,應考慮 垂直外邊距 合并問題。
3、如果盒子沒給寬度, 繼承父親的寬度,則 padding 一般不會影響盒子大小。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,460評論 6 538
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,067評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,467評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,468評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,184評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,582評論 1 325
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,616評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,794評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,343評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,096評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,291評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,863評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,513評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,941評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,190評論 1 291
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,026評論 3 396
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,253評論 2 375