CSS高級技巧:陰影效果

2021-02-15 web前端網頁設計

 


點擊上方「web前端網頁設計」一鍵關注,更多網頁設計 UI設計 Html div css HTML5+CSS3、JavaScript、JQuery,PHP、mysql、帝國CMS建站教程盡在掌握。

一點陰影可以給平板的設計增加縱深的感覺, 很多時候我們都是直接用PhotoShop直接製作帶陰影的圖片以供使用, 這裡介紹的是一種不需要修改圖片, 而只需要用CSS完成的技巧.

原理:

給<img />標籤增加一個容器, 給容器設置一個大的陰影背景圖像, 然後把<img />利用負值外補丁進行偏移, 使陰影落在圖像外側以達到效果.

 
              備用的陰影圖像 shadow.gif

HTML代碼如下:

<div>
    <img src="../images/origin_image.jpg" alt="" />
</div> 網頁教學網

CSS代碼如下:

.image_shadow{position:relative;float:left;clear:right;background:url(../images/shadow.gif) no-repeat right bottom;}
.image_shadow img{position:relative;display:block;margin:-5px 5px 5px -5px;padding:3px;background:white;border:solid 1px #ccc;}

紅色代碼部分是為IE 6準備的, 不然...

Clagnut陰影 : 網頁教學網

Richard Rutter提供了一個類似的陰影方法, 他用的是相對定位來偏移圖像.

CSS代碼如下:

.image_shadow{float:left;line-height:0;background:url(../images/shadow.gif) no-repeat right bottom;}
.image_shadow img{position:relative;left:-5px;top:-5px;padding:3px;background:white;border:solid 1px #ccc;} Webjx.Com

 

 

上面的陰影都有點生硬(hard), 我們可以通過建立一個額外的div標籤, 再運用一個帶透明度的png蒙板來遮蓋陰影圖片的邊緣.


     具有Alpha的陰影蒙板圖片 shadow_mask.png

HTML代碼如下:

<div>
    <div>
        <img src="../images/origin_image.jpg" alt="" />
    </div>
</div>

CSS代碼如下:

.image_shadow{float:left;background:url(../images/shadow.gif) no-repeat right bottom;}
.image_shadow div{float:left;padding:0 5px 5px 0;background:url(../images/shadow_mask.png) no-repeat left top;}
.image_shadow div img{padding:3px; background:white; border:solid 1px #ccc;} 網頁教學網

效果如下:

   蒙板效果的陰影, 更加自然

   無蒙板的陰影, 邊緣有點生硬

對於IE 6以下不支持png-24的透明效果, 我們要用到filter 和 hacks了

* html .images_shadow div{filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/shadow_mask.png' ,sizingMethod='crop');}

另還有類似CSS Sprites的方法創建陰影, 同樣可以做到自然. 但是額外標籤過多, 不推薦.

相關焦點

  • CSS魔法堂:Box-Shadow沒那麼簡單啦:)
    二話不說看效果3D小球<style type="text/css">.ball{  background: rgba(100,100,100,0.2);  width: 100px;  height: 100px;  padding
  • 【前端-CSS動畫】製作聖誕節彩燈
    css動畫 animationcss動畫 keyframesbox-shadow
  • CSS字體樣式
    DOCTYPE html><html>    <head>        <meta charset="UTF-8" />        <title>字體類型</title>        <style type="text/css">
  • Word教程:高級查找替換13則技巧,收藏備用!
    上面13則Word查找替換技巧,均涉及到了使用通配符來進行操作。關於通配符代碼,韓老師為大家羅列了一張表格:在全套《Word查找替換高級視頻教程》中,老師不僅為大家展示了案例,更更主要的是講解了這些代碼的含義和使用場景。理解了代碼的本質意義,才能在實際工作中,舉一反三,靈活使用。
  • 進階:玩轉 CSS 變量
    property, @imp) { @{property}: e(replace(@imp, '@([^() ]+)', '@{$1}', 'ig')); @{property}: e(replace(@imp, '@([^() ]+)', 'var(--$1, @{$1})', 'ig'));}函數效果如下所示
  • HTML+CSS系列:登錄界面實現
    一.效果 二.具體實現1.index.html<!
  • JQ實現彈幕效果
    JQ實現彈幕效果,快來吐糟你的想法吧
  • 245.Office技巧:如何在PPT中繪製弧形效果?
    搞定這個弧形的效果其實非常簡單,用兩個橢圓堆疊來搞定。具體操作如下:在頁面中插入橢圓。(下圖 1 處)在頁面中拖拽一個巨大的橢圓,你甚至可以旋轉一定的角度,塗上紅色,效果如下: 則達到類似的效果,如果想做得和提問圖片一模一樣,可以適當調整灰色橢圓的大小和角度。
  • css動畫 | 實現炫酷的旋轉動畫
    先用相對定位使得圖片在同一水平,然後分別給六張圖片加旋轉變換以及z軸平移變換,大概的靜態效果就有了,然後給最外層的盒子加視距,使得圖片出現立體效果,最後給最外層的盒子加視距、設置3d變換與沿著y軸360度的旋轉動畫。
  • jquery css() 增加值
    script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script><script>  $( function() {    $( "p" ).click( function() {      $( this ).css
  • 用JQ + CSS實現浪漫表白必備
    推薦:《js高級教程》代碼如下,複製即可使用:<!DOCTYPE html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>浪漫表白 By:阿杜</title> <style type = "text/css">
  • 135.Office技巧:如何讓PPT放映時候有IPAD滑屏效果?
    問題:Q群小夥伴們問,能不能把PPT動畫設置成Ipad滑動效果?解答:當然可以啦,而且比較快捷的方法就是利用切換幻燈片效果。具體方法如下:打開PPT後,將光標放置左側預覽幻燈片處,然後按 Ctrl+A 全選中所有幻燈片(下圖 1 處),然後單擊「切換」-「推進」效果即可(下圖 2 處)。
  • 公司的一個面試題:如何用CSS讓一個容器水平垂直居中?
    DOCTYPE html>   <html>      <head>          <meta charset="UTF-8">          <title>demo</title>      </head>      <body>          <style type="text/css
  • css3 تە نۇر چاقناپ رەڭ ئۆزگەرتىپ تۇرىدىغان كۇنۇكا ياساش (سىنلىق)
    css3 تە ھەركەتجان تەگلىكى بار كۇنۇپكا ياساش
  • CSS樣式大全
    (微信後臺回復「CSS」,即可獲得關於css設計的幫助文檔哦)字體屬性:(font)大小 {font-size: x-large;}(特大) xx-small;(極小) 一般中文用不到,只要用數值就可以,單位:PX、PD樣式 {font-style: oblique;}(偏斜體) italic;(斜體) normal;(正常)行高
  • 攝影技巧:吃飯之前先拍照,如何把美食圖片拍的垂涎欲滴?
    「攝影技巧入門教程丨攝影技巧丨丨攝影入門丨丨攝影教程丨丨攝影圖片丨來源:花粉手機攝影攝影技巧:現在的年輕人大多數都是吃飯之前先拍照,吃飯的儀式感也是滿滿的。那麼今天,我們就來和大家聊聊如何拍出更贊的美食圖片。
  • CSS Grid 網格布局:「16」使用 place-content 屬性指定網格元素水平、垂直方向元素分布方式
    語法如下所示:<style type="text/css">.container { place-content: <align-content> <justify-content>?
  • 前端學習:這些CSS小技巧你都會嗎?
    為了幫助你提高效率,今天,就為大家分享一些CSS小技巧,如果你感覺有用,也可以收藏與分享給你的小夥伴們~將一段文字置於容器的水平中點,只要設置text-align屬性即可:先該容器設置一個明確寬度,然後將margin的水平值設為auto即可。
  • 純CSS實現Tab頁籤樣式
    doctype html><html lang="zh"><head> <meta charset="UTF-8"> <title>純CSS實現Tab頁籤樣式</title> <style type="text/css"> body {
  • CSS八種讓人眼前一亮的HOVER效果
    一.發送效果HTML<div id="send-btn">  <button>    // 這裡是一個svg的佔位    Send  </button></div>複製代碼CSS