您好,登錄后才能下訂單哦!
這篇文章主要講解了“如何利用CSS3實現氣泡效果”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何利用CSS3實現氣泡效果”吧!
首先定義一個
CSS Code復制內容到剪貼板
<p class="speech"></p>
先給外層的容器添加樣式:
CSS Code復制內容到剪貼板
p.speech{
position: relative;
width: 200px;
height: 100px;
text-align: center;
line-height: 100px;
background-color: #fff;
border: 8px solid #666;
-webkit-border-radius: 30px;
-moz-border-radius: 30px;
border-radius: 30px;
-webkit-box-shadow: 2px 2px 4px #888;
-moz-box-shadow: 2px 2px 4px #888;
box-shadow: 2px 2px 4px #888;
}
沒有什么特別復雜的,主要的核心就在postion:relative,用來定位對話浮層的。我們還需要一些Mozilla和webkit的屬性來完成圓角和陰影,IE8以下的瀏覽器看不到這些屬性,只是顯示一個框,不影響總體的效果。
我們現在需要創建對話浮層下面的那個三角形的指向標志了。不使用圖片,我們使用CSS邊框來完成這個效果。看看下面這個用不同顏色邊框完成的效果。
我們把高度和寬度減少到0px,然后給邊框使用不同的大小,看看效果:
為了最后能做成指示標志的樣子,我們把上邊距和左邊距設置為solid,下邊距和右邊距設置為透明:
但是我們把這個放哪呢?還好,我們可以使用CSS的偽類:before和:after來生成,所以:
CSS Code復制內容到剪貼板
p.speech:before{
content: ' ';
position: absolute;
width: 0;
height: 0;
left: 30px;
top: 100px;
border: 25px solid;
border-color: #666 transparent transparent #666;
}
現在三角形的標識就定位在我們的氣泡下面了。另外,不要費事去考慮這個元素的陰影,他會定位在透明邊界的旁邊,而不是看到的圖形的旁邊。
我們還需要移除三角形的一部分。我們可以在里面放置一個白色的小三角形來達到這個效果。
CSS Code復制內容到剪貼板
p.speech:after{
content: ' ';
position: absolute;
width: 0;
height: 0;
left: 38px;
top: 100px;
border: 15px solid;
border-color: #fff transparent transparent #fff;
}
我們的不使用圖片的對話氣泡就完成了:
另外,我們還可以使用:before和:after偽類來做很多其他的事情,比如,一個思考氣泡也可以通過這樣辦法完成:
首先也是建一個
CSS Code復制內容到剪貼板
<p class="thought">I think...</p>
css代碼:
CSS Code復制內容到剪貼板
p.thought{
position: relative;
width: 130px;
height: 100px;
text-align: center;
line-height: 100px;
background-color: #fff;
border: 8px solid #666;
-webkit-border-radius: 58px;
-moz-border-radius: 58px;
border-radius: 58px;
-webkit-box-shadow: 2px 2px 4px #888;
-moz-box-shadow: 2px 2px 4px #888;
box-shadow: 2px 2px 4px #888;
}
CSS Code復制內容到剪貼板
p.thought:before, p.thought:after{
content: '';
position: absolute;
left: 10px;
top: 70px;
width: 40px;
height: 40px;
background-color: #fff;
border: 8px solid #666;
-webkit-border-radius: 28px;
-moz-border-radius: 28px;
border-radius: 28px;
z-index:5;
}
CSS Code復制內容到剪貼板
p.thought:after{
position: absolute;
width: 20px;
height: 20px;
left: 5px;
top: 100px;
-webkit-border-radius: 18px;
-moz-border-radius: 18px;
border-radius: 18px;
z-index:6;
}
最新實現效果:
感謝各位的閱讀,以上就是“如何利用CSS3實現氣泡效果”的內容了,經過本文的學習后,相信大家對如何利用CSS3實現氣泡效果這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。