利用 Css 製做精美的卡片UI

本教程將會告訴你如何用 Html 和 Css 實現卡片界面。教程會重點使用 Css filter 屬性處理圖片,以便給它添加一些過渡效果。css

第一步:肯定 HTML 代碼結構

在建立 HTML 代碼前,你首先應該想象它的結構。當你有一個好的模型時,應該第一時間把你想象的頁面結構或者你的 CSS 模塊及時地在紙上羅列出來。一個設計合理、結構良好的 HTML 頁面會讓你在接下來的工做過程當中變的一異常輕鬆。html

圖片描述

<a id="case-title" href=" http://www.loveo.cc/using-css-to-make-cards-ui.html">
    利用css製做卡片UI -- 墨丶水瓶
</a>
<div class="card">
    <a href="#.">
        <div class="card-image">
            <img src="http://www.loveo.cc/wp-content/uploads/2017/02/card-image.jpg"
            alt="Orange" />
        </div>
        <div class="card-body">
            <div class="card-date">
                <time>
                    20 Novembre 1992
                </time>
            </div>
            <div class="card-title">
                <h3>
                    Lorem Ipsum
                </h3>
            </div>
            <div class="card-exceprt">
                <p>
                    Lorem ipsum dolor sit amet, consectetur adipisicing elit. Aliquam voluptatibus
                    autem consectetur voluptate facere at, omnis ab optio placeat officiis!
                    Animi modi harum enim quia veniam consectetur unde autem inventore.
                </p>
            </div>
        </div>
    </a>
</div>

第二步:定義 Css 規則

一旦確立了 Html 結構,接下來咱們將開始爲它編寫 Css 樣式。我將在下面分別貼出每一部分的 Css 代碼。post

.card字體

.card {
    width:400px;
    margin:0px auto;
    background-color:white;
    box-shadow:0px 5px 20px #999;
}
.card a {
    color:#333;
    text-decoration:none;
}
.card:hover .card-image img {
    width:160%;
    filter:grayscale(0);
}
  1. 將 .card 設置爲固定大小。ui

  2. 居中方式爲 margin:0px auto;spa

  3. 爲了在稍暗的背景中便於區分,將塊元素設置爲白色。翻譯

  4. 增長了一個小陰影產生疊加效應。設計

  5. 定義元素 a 標籤的顏色與下劃線修飾。code

  6. 定義鼠標移上時放大元素並將濾鏡灰度設置爲「0」。orm

.card-image

.card-image {
    height:250px;
    position:relative;
    overflow:hidden;
}
.card-image img {
    width:150%;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    filter:grayscale(1);
    transition-property:filter width;
    transition-duration:.3s;
    transition-timing-function:ease;
}
  1. 固定塊元素的大小,其中包含咱們的圖片,這使咱們可以在知足尺寸要求的狀況下,任何圖片均可用於製做成卡片。

  2. 設置相對的定位方式,由於它裏面包含了絕對定位的元素。

  3. 定義內容溢出元素框時裁剪並隱藏。

  4. 咱們能夠根據須要在固定大小的100%基礎上增長圖像的默認大小,可是不要添加小於400px的圖像,也不要忘記遵照其寬度/高度比,以避免出現空白。

  5. 爲了將圖像在父元素中徹底顯示及將 .card-image 的中心做爲起點 ,咱們須要同時設置定位方式爲 absolute 。top 、left 爲50% , 而後能過 transform:translate(-50%, -50%) 設置位移,使 .card-image
    的中心點做爲起點 。

  6. 定義元素爲 100% 灰度。

  7. 使元素在鼠標移上時在300毫秒內慢速開始,而後變快,而後慢速結束的過渡方式放大。

.card-body

.card-body {
    text-align:center;
    padding: 15px 20px;
    box-sizing: border-box;
}
  1. 定義 .card-bady 元素的文本對齊方式爲居中對齊。

  2. 設置元素的內邊距。

  3. 元素 box-sizing 屬性值爲 border-box。

字體及其餘

.card-date {
    font-family: 'Source Sans Pro', sans-serif;
}
.card-title, .card-excerpt {
    font-family: 'Playfair Display', serif;
}
.card-date, .card-title {
    text-align:center;
    text-transform:uppercase;
    font-weight: bold;
}
.card-date, .card-excerpt {
    color: #777;
}

博文連接:利用 Css 製做精美的卡片 UI

源碼連接:利用 Css 製做精美的卡片 UI

原文連接:Tutoriel - Réaliser une carte en CSS ( Card UI CSS )

翻譯:墨丶水瓶

相關文章
相關標籤/搜索