ie6 圓角處理

来源:http://www.cnblogs.com/shouce/archive/2016/03/16/5282018.html
-Advertisement-
Play Games

border-radius瀏覽器相容性: IE9+、Firefox 4+、Chrome、Safari 5+ 以及 Opera 支持 border-radius 屬性。 <style>.box { position:relative; width: 99px; height: 99px; paddin


border-radius瀏覽器相容性:

IE9+、Firefox 4+、Chrome、Safari 5+ 以及 Opera 支持 border-radius 屬性。 

我們都知道可以border-radius來給元素添加圓角; 但是不僅ie6,ie7不支持這個,連ie8也是不支持這個屬性的。 如何讓其它的瀏覽器也支持圓角呢?   今天我分享一下我的做法:     原理很簡單就是將四個角切下來,用絕對定位的方式分別遮住四個方角以達到圓角的效果。 註意:這裡的圓角需要同時將背景(也就是黃色部分)的部分切下來,不然會出現左下角的那種方角沒有被遮住的情況。   這是代碼:

<style>
.box {
position:relative;
width: 99px;
height: 99px;
padding:9px;
border: 1px solid #F00;
background-color: #FFF;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius:10px;
}
/*以下是不支持border-radius的瀏覽器所需要的代碼*/
.r1, .r2, .r3, .r4 {
position: absolute;
height: 10px;
width: 10px;
background-image: url(img/r.png);
background-repeat: no-repeat;
overflow:hidden;
}
.r1{ top:-1px; left:-1px; background-position:0 0;}
.r2{ top:-1px; right:-1px; background-position:-10px 0;}
.r3{ bottom:-1px; left:-1px; background-position:0 -10px;}
.r4{ bottom:-1px; right:-1px; background-position:-10px -10px;}
</style>

css


複製代碼
 1 <style>
 2 .box {
 3     position:relative;
 4     width: 99px;
 5     height: 99px;
 6     padding:9px;
 7     border: 1px solid #F00;
 8     background-color: #FFF;
 9     -webkit-border-radius: 10px;
10         -moz-border-radius: 10px;
11                  border-radius:10px;
12 }
13 /*以下是不支持border-radius的瀏覽器所需要的代碼*/
14 .r1, .r2, .r3, .r4 {
15     position: absolute;
16     height: 10px;
17     width: 10px;
18     background-image: url(img/r.png);
19     background-repeat: no-repeat;
20     overflow:hidden;   
21 }
22 .r1{ top:-1px; left:-1px; background-position:0 0;}
23 .r2{ top:-1px; right:-1px; background-position:-10px 0;}
24 .r3{ bottom:-1px; left:-1px; background-position:0 -10px;}
25 .r4{ bottom:-1px; right:-1px; background-position:-10px -10px;}
26 </style>
複製代碼
1  <div class="box"><i class="r1"></i><i class="r2"></i><i class="r3"></i><i class="r4"></i>
2         <!--這裡是其它的內容-->
3 </div>

    

但是在ie6裡面會出現四個角上會有邊線的問題;

這是由於ie6在絕對定位的時候如果父級容器的高或者寬是單數,就會在right和bottom上有1像素的bug!(這個高度和寬度是innerwidth和innerheight)

如果是雙數則不會出現這個問題;

 

這個Bug得採用js來解決,這裡我就不仔細講了,具體請看demo;

優點: 1.不限制元素的大小; 2.採用絕對定位,不會影響佈局; 3.漸進增強,對於支持border-radius的瀏覽器我們可以隱藏這四個角上的元素。 4.相容IE6;   缺點: 1.html裡面需要額外添加四個多餘的元素; 2.css也需要添加定位的樣式; 3.還需要添加一個額外的圖片; 4.如果需要相容ie6還得有可能還得採用Js;
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 可以通過http://htmlpreview.github.io/這個網站,直接線上預覽html頁面。 ↓ ↓ 可以發現:這個網站直接將github上的頁面地址當做參數來傳遞。
  • 上海樂司凱信息科技有限公司 是上海邁伊茲咨詢有限公司的子公司 地址是在臨空經濟區,攜程那路,北翟路外環線 稅前10k 20k,說是有牛人30k也能承受,14薪 有意向留言好了 1、精通HTML/HTML5/XHTML,CSS,精通運用CSS+DIV佈局,可使用HTML5、CSS3、JavaScrip
  • 這是一款基於segment.js製作的非常有創意的分段式SVG文字動畫特效。這個文字動畫特效通過動畫SVG的描邊路徑來製作各種文字的動畫效果,效果非常的贊。 這個SVG文字動畫特效的第一個DEMO中的最後幾個例子使用了mo.js插件,一款由Oleg Solomka編寫的用於製作網頁圖形動畫的Java
  • sticky組件,通常應用於導航條或者工具欄,當網頁在某一區域滾動的時候,將導航條或工具欄這類元素固定在頁面頂部或底部,方便用戶快速進行這類元素提供的操作。本文介紹這種組件的實現思路,並提供一個同時支持將sticky元素固定在頂部或底部的具體實現,由於這種組件在網站中非常常見,所以有必要掌握它的實現...
  • 通過第一課的學習,你已經掌握瞭如何通過debug調試器來跟PC上的設計器聯調來實時查看UI設計效果、調試代碼了,接下來通過一系列的demo開發教學你將很快上手學習到如何開發一個真正的App。 要開發App,最重要的就是確定主框架,好的主框架能起到減少工作量、簡化代碼的作用,而頁面通常需要產品人員的U
  • CSS命名規範 一.文件命名規範 全局樣式:global.css;框架佈局:layout.css;字體樣式:font.css;鏈接樣式:link.css;列印樣式:print.css; 二.常用類/ID命名規範 頁 眉:header內 容:content容 器:container頁 腳:footer
  • 第一次打開一個頁面時,讓載入好的圖片先隱藏,然後再執行動畫fadeIn。 這裡的load事件:當所有子元素已經被完全載入完成時,load事件被髮送到這個元素
  • (1)、工廠模式:封裝一個函數createPerson,這個函數可以創造一個人對象,包含三個屬性和一個方法,然後利用這個函數分別創建了2個對象p1,p2. 工廠模式下解決了創建多個相似對象的問題,但是卻沒有解決對象識別問題(不知道這個對象的類型是數組或函數或正則等)alert(p1 instance
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...