最近学习CSS的时候遇到了一些坑,有些坑真的是坑死宝宝我了,,,,接下来罗列一些比较典型的。入坑了请自救吧。。。
背景半透明效果
根据不同的应用场景和兼容性要求,有多种实现背景半透明的方法:
- 在比较现代的或者主流的浏览器中,大多支持rgba来实现背景透明颜色。例如:background-color:rgba(0,0,0,0.5);//背景颜色为黑色,透明度为50%。
- 使用opacity属性,对已设置background-color的元素设置半透明。例如:background-color:green; opacity:0.5;
- 使用半透明的png图片。制作一个小的半透明图片,将该图片设置为背景,设置background-repeat:repeat; 一般不用。
|
|
我写了如下代码:
html
|
|
css
|
|
打开浏览器查看,发现content也是半透明的,,,
|
|
margin 的冲突
|
|
|
|
另外元素浮动的情况下,给两个元素同时设置margin-top和margin-bottom,两个元素之间的间距会相加;不浮动的情况下两个元素之间的间距取最大值。
margin-top 的坑
在给子级元素设置margin-top时,发现父级元素跟着一起移动。
解决方法:
- 给父级元素加position:absolute;
- 给父级元素加border样式;
- 给标签本身设置浮动。
清除浮动
子级元素浮动后,父级元素检测不到子级的高度。有以下几种清除浮动的方式:
- 手动给父级加高度。比较有局限性,大多时候父级的高度是不确定的,要由子级撑开。不常用。
- 给父级加样式:overflow:hidden;比较常用。
- 设一个同级标签,并设置样式为:clear:both;(注:此同级标签本身不能浮动)。
通过设置标签的伪类(例如:给类名为div的标签清除浮动,如下:)
12345.div:after{content:"";clear:both;display:block;}
|
|
^-^ 加油 ^-^