整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          上海HTML5開發培訓機構大咖分享html虛線邊框設置教程

          習HTML時有時候我們需要用代碼設置邊框或虛線邊框的樣式,那該怎么設置呢?下面上海非凡進修學院HTML5開發培訓機構大咖分享下html虛線邊框設置教程,會對幾個不同標簽加虛線邊框效果樣式,同學們可以根據示例靈活掌握與應用到自己DIV+CSS布局中。

          為了對html不同標簽加邊框虛線,我們選擇幾個常用標簽對齊設置邊框虛線效果。

          1、html常用標簽

          div標簽

          span

          ul li

          table tr td

          2、實例用到CSS屬性單詞

          border

          width

          height

          3、實現虛線的CSS重點介紹

          border為邊框屬性,如果要實現對象邊框效果,要設置邊框寬度、邊框顏色、邊框樣式(實線還是虛線)

          border:1px dashed #F00 這個就是設置邊框樣式寬度為1px,虛線,虛線為紅色。

          4、實例描述

          我們對以上幾個標簽設置相同寬度、相同高度、邊框效果。

          5、HTML代碼示例:

          以上示例對html中不同標簽設置相同的樣式,包括相同邊框虛線。

          上海HTML5開發培訓機構大咖提示邊框三個樣式

          通常我們可以對邊框設置寬度(厚度)、邊框樣式、邊框顏色這三個屬性與參數。

          1)、邊框顏色:border-color:#000

          2)、邊框厚度(寬度):border-width:1px

          使用數字+單位設置邊框厚度寬度,如1px(邊框厚度寬度為1像素),邊框必須為正數字,大于0的數值。否則設置邊框border樣式無效。

          3)、border邊框樣式:border-style:solid

          上海HTML5開發培訓機構大咖提示:邊框border樣式值如下:

          none :無邊框。與任何指定的border-width值無關

          hidden : 隱藏邊框。IE不支持

          dotted : 在MAC平臺上IE4+與WINDOWS和UNIX平臺上IE5.5+為點線。否則為實線(常用)

          dashed : 在MAC平臺上IE4+與WINDOWS和UNIX平臺上IE5.5+為虛線。否則為實線(常用)

          solid :實線邊框(常用)

          double : 雙線邊框。兩條單線與其間隔的和等于指定的border-width值

          groove : 根據border-color的值畫3D凹槽

          ridge :根據border-color的值畫菱形邊框

          inset : 根據border-color的值畫3D凹邊

          outset : 根據border-color的值畫3D凸邊

          前做過很多特殊的布局,比如在這兩篇文章 CSS 實現優惠券的技巧 (juejin.cn)[1]CSS 實現支持漸變的提示框(tooltips) (juejin.cn)[2],如下

          但是一直有一個痛點就是:無法給這些圖形加上邊框

          今天帶來一個小技巧:利用 drop-shadow 一行代碼搞定所有不規則邊框

          一、投影

          這里需要利用投影 drop-shadow, 不太了解的可以參考 這篇文章: 被低估的CSS濾鏡:drop-shadow[3],這里簡單介紹一下

          語法其實很簡單

          filter: drop-shadow(offset-x offset-y blur-radius color)

          并不是一個單獨的屬性,而是 filter 濾鏡下的一個方法

          這里 offset-xoffset-y為偏移量,blur-radius為模糊半徑,color為投影顏色。實際作用就是可以模擬真實世界的投影(透明的部分不會投影),區別如下

          可惜的是,雖然和 box-shadow 比較類似,但是少了擴展半徑。試想一下,如果支持了擴展半徑,那不規則邊框是不是很容易了(應該不會支持了,因為真實世界的投影也沒有擴展半徑)?

          那么,drop-shadow如何生成邊框呢?

          二、多重投影

          box-shadow 可以很輕易的實現多重陰影

          box-shadow: 0 0 3px #333, 1px 1px 5px #666, ...

          可以無限疊加下去。

          但是,drop-shadow可就不行了,比如

          filter: drop-shadow(0 0 3px #333, 1px 1px 5px #666, ...)

          可以看到瀏覽器直接認為非法了

          不過可以換一種思路,雖然 drop-shadow不支持,但是filter支持多種濾鏡,所以可以這樣來實現

          filter: drop-shadow(0 0 3px #333) drop-shadow(0 0 3px #333) drop-shadow(0 0 3px #333)...

          這樣就可以生效了

          是不是有點像邊框了?如果只設置 0.5px 的模糊,多疊加幾次,模糊的部分會變清晰,這個就有點像一個比較軟的筆觸,多畫幾筆就變清晰了,于是可以得到這樣的效果

          這樣就更加接近了,實踐下來,可能需要微調,這里給出一個比較完美的方案(重點來了~

          .wrap{
            filter: drop-shadow(0px 0px 0.5px #333) drop-shadow(0px 0px 0px #333) drop-shadow(0px 0px 0px #333) drop-shadow(0px 0px 0px #333) drop-shadow(0px 0px 0px #333)
          }

          這樣實現的邊框已經足夠清晰,基本可以日常使用了

          這段代碼中顏色比較多,可以優化一下,投影的顏色默認是跟隨當前文字顏色的,所以可以簡化為

          .wrap{
            filter: drop-shadow(0 0 0.5px)drop-shadow(0 0 0)drop-shadow(0 0 0)drop-shadow(0 0 0)drop-shadow(0 0 0);
            color: #333;
          }

          線上示例可訪問 coupon-border[4],還有這個 tooltips-border[5]

          三、使用和局限

          使用方式簡單,在容器的最外層加上這一行 CSS 就行了,比如之前的優惠券例子,得到的邊框效果這樣的

          還有這樣的

          邊框還算不錯,幾乎看不出投影

          不過這里需要注意的是,經過 mask 裁剪的圖形需要在外層嵌套一層父級,不然投影會被 mask 直接裁剪掉

          <div class="wrap">
            <div class="coupon">
             <!--優惠券--> 
            </div>
          </div>

          另外,這個方案進適合比較小的邊框,如果較大的邊框,可能會比較圓滑,而且需要疊加更多的濾鏡,效果也不太好,如下

          這些就需要自行取舍了(一般情況下不會有太粗的邊框)

          四、總結和說明

          本文介紹了一個實現不規則邊框的通用方案,成本非常低,效果也非常不錯,這里總結一下:

          1.drop-shadow只會對不透明部分生成投影,符合真實物理世界2.drop-shadow不支持多重投影,filter支持多重濾鏡,可以間接實現多重投影3.邊框的實現原理是投影的多重疊加4.有些通過mask裁剪生成的圖形,需要在外包裹一層容器,再生成邊框5.適合比較小的邊框,過大的邊框不太理想6.濾鏡其實是一個比較耗費性能的屬性,不適合太范圍使用

          可能大部分同學最后可能還是會選擇 “切圖.png”,不過這也算是一個解決方案 ,多一種方案總是沒錯的。最后,如果覺得還不錯,對你有幫助的話,歡迎點贊、收藏、轉發???

          References

          [1] CSS 實現優惠券的技巧 (juejin.cn): https://juejin.cn/post/6945023989555134494
          [2] CSS 實現支持漸變的提示框(tooltips) (juejin.cn):
          https://juejin.cn/post/6971261516284690468
          [3] 這篇文章: 被低估的CSS濾鏡:drop-shadow:
          https://zhuanlan.zhihu.com/p/195792157
          [4] coupon-border:
          https://codepen.io/xboxyan/pen/jOmeoPd
          [5] tooltips-border:
          https://codepen.io/xboxyan/pen/wvdQgXK


          主站蜘蛛池模板: 最美女人体内射精一区二区| 亚洲一区二区女搞男| 丰满爆乳一区二区三区| 波多野结衣免费一区视频| 久久久国产精品一区二区18禁| 无码免费一区二区三区免费播放| 精品熟人妻一区二区三区四区不卡 | 精品免费久久久久国产一区| 无码AV中文一区二区三区| 国产一区二区精品久久91| 精品无码一区二区三区爱欲九九 | 国产精品女同一区二区久久| 亚洲变态另类一区二区三区| 中文字幕一区二区免费| 国产成人av一区二区三区在线| 无码人妻一区二区三区免费看| 国产主播一区二区| 精品国产鲁一鲁一区二区 | 福利一区二区在线| 国产丝袜一区二区三区在线观看 | 国产成人精品一区二区三区免费| 无码人妻精品一区二区三区久久| 日韩精品午夜视频一区二区三区| 国产A∨国片精品一区二区 | 久久亚洲色一区二区三区| 中文字幕精品无码一区二区三区| 亚洲一区二区三区四区在线观看| 日韩免费无码视频一区二区三区| 中文字幕乱码亚洲精品一区| 国产在线观看精品一区二区三区91| 成人免费一区二区三区| 亚洲欧美日韩中文字幕一区二区三区| 无码人妻av一区二区三区蜜臀| 伊人久久大香线蕉av一区| 人妻av综合天堂一区| 国产91大片精品一区在线观看| 中文字幕aⅴ人妻一区二区| 亚洲国产综合精品中文第一区| 亚洲AV成人精品日韩一区| 亚洲国产国产综合一区首页| 亚洲av无码不卡一区二区三区 |