几个常见CSS错误和解决办法
1.IE6下,当float存在时,margin双倍的问题
解决方法:加display:inline;
例:
#content {
left;
width:
500px;
padding:
10px 15px;
margin-left:
20px;
display:inline;
}
2.克服盒子模型的hack
原写法:
#main-div{
width: 150px;
border: 5px;
padding: 20px;
}
修正后
#main-div1{
width: 150px;
}
#main-div1 div{
border: 5px;
padding: 20px;
}
例如:
<div id="main-div">1</div>
<div id="main-div1"><div>2</div></div>
见图:
两者区别:1是把padding加到父层里,DIV的宽度是150+20+20
2是把PADDING加到子层里,div的宽度是150.
我习惯是用1的方法去自己计算宽高.
3,4.最小高度(最小宽度)IE不识别的解决方法
.container {
width:20em;
padding:0.5em;
border:1px solid #000;
min-height:8em;
height:auto;
}
* html .container {
height: 8em;
}
5.整块元素居中对齐的方法
body{
text-align: center;
}
#container
{
text-align: left;
width: 960px;
margin: 0 auto;
}
先定义BODY中的文字整个居中text-align:center,再定义其中需要左对齐的子元素text-align:left;
6.垂直居中的CSS
#wrapper {
width:530px;
height:25px;
background:url(container.gif) no-repeat left top;
padding:0px 10px;
}
#wrapper p {
line-height:25px;
}
适用单行文字,将height设成line-height同值
7.固定宽度下几个LI元素float横排时,超出宽度限定的解决方法
css:
ul.listing{ margin:0; width:400px; border:1px solid #000;}
ul.listing li{ list-style-type:none; float:left; margin:0 20px 0 0; width:83px; border:1px solid red;}
ul.listing1{ margin:0 0 0 -20px; width:420px; border:1px solid #000;}
ul.listing1 li{ list-style-type:none; float:left; margin:0 0 0 20px; width:83px; border:1px solid red;}
例子:
<ul class="listing">
<li>第一句</li>
<li>第二句</li>
<li>第三句</li>
<li>第四句</li>
</ul>
</div>
<div>
<ul class="listing1">
<li>第一句</li>
<li>第二句</li>
<li>第三句</li>
<li>第四句</li>
</ul>
图示:
原理:
用负margin的方法
9.定位z-index
z-index起作用的前提是,必须有position:absolute,
position:fixed orposition:relative这三种中的任一种属性.
css:
.relativeblock1 {
position:relative;
width:200px;
height:80px;
z-index:51;
}
.absoluteblock1 {
position:absolute;
left:10px;
top:90px;
width:40px;
height:40px;
z-index:1;
}
.relativeblock2 {
position:relative;
width:200px;
height:80px;
z-index:50;
}
例:
<div class="relativeblock1">
<div class="absoluteblock1"></div>
</div>
<div class="relativeblock2"></div>
见图:
按CSS来说,relativeblock2应该会盖上absoluteblock1,但实际正相反,是因为
absoluteblock1的优先级别高于relativeblock2,他继承了absoluteblock1的z-index,虽然他自身的z-index值为1,但实际为51.1,当然高于relativeblock2的z-index:50.
10.相对定位relative和绝对定位absolute的区别
- CSS:
- #redSquare
- {
- position: relative;
- bottom: 40px;
- right: 40px;
- }
- 图例:
- 11.绝对定位的应用
- css:
- #hang_tab {
- position: absolute;
- top: 7px;
- left: 0px;
- width: 157px;
- height: 93px;
- }
- 图例:
- 13.正确消除浮动(float)的方法
- css:
- #container:after
- {
- content: ".";
- display: block;
- height: 0;
- clear: both;
- visibility: hidden;
- }
- #container
- {display: inline-block;}
- * html #container
- {height: 1%;}
- #container
- {display: block;}
- 例图:
- 经实现,用:after属性是为了消除float浮动(针对FIREFOX使用)时父层无法正确识别高度,复杂且不易记不,优点是不需要再写<div style="clear:both"></div>这样一个空层来撑起高度。
- 15.如何处理圆角
- 最简单的方法是用一张足够大的图,然后我该圆角标注
- html:
- <div class="roundBox">
- <p>beautifully-encapsulated paragraph</p>
- <div class="boxBottom"></div>
- </div>
- css:
.roundBox {
background:transparent url(roundBox.gif) no-repeat top left;
width:340px;
padding:20px;
}
.roundBox .boxBottom {
background:white url(roundBox.gif) no-repeat bottom left;
font-size:1px;
line-height:1px;
height:14px;
margin:0 -20px -20px -20px;
}
- 17.用label标签做表单(非table)
- 精华html:
- <form method="post" action="contactengine.php">
- <label for="Name">Name:</label>
- <input type="text" name="Name" id="Name" />
- .....
- </form>
- css:
- label {
- float: left;
- text-align: right;
- margin-right: 15px;
- width: 100px;
- }
- 20.用有背景图的hr做分隔线,适用所有浏览器的方法.
- 因为hr自身的样式是一根黑线,所以让他自身的样式 隐藏,然后新写一个class="hr",让hr听他父层的话
- 经验证这样写无意义,对于目前中国的网站来说,极少用到HR.
- =========================================================
- The CSS Class
- ====
几个常见CSS错误和解决办法的更多相关文章
- 【转载】IE浏览器常见的9个css Bug以及解决办法
IE浏览器常见的9个css Bug以及解决办法 我们在浏览网页的时候经常看见这样的现象:某个网页在IE6浏览器中打开很正常,但是在IE8里面打开可能完全变形了.或者也有可能出现完全相反的现象.这让We ...
- Oracle的常见错误及解决办法
ORA-12528: TNS:listener: all appropriate instances are blocking new connections ORA-12528问题是因为监听中的服务 ...
- github常见操作和常见错误及其解决办法
一.常见操作 1. 使用git在本地创建一个项目的过程 $ makdir ~/hello-world //创建一个项目hello-world $ cd ~/hello-world //打开这个项目 $ ...
- 常见反编译产生错误 k__BackingField 解决办法
常见反编译产生错误 k__BackingField 解决办法 无聊反编译小蚂蚁出现上千的错同样的错 private bool <EnableRuntimeHandler> ...
- MVC MVC常见错误及解决办法
MVC常见错误及解决办法 问题1: 必须添加对程序集“EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c5 ...
- Docker Hadoop 配置常见错误及解决办法
Docker Hadoop 配置常见错误及解决办法 问题1:wordcount运行卡住,hadoop 任务运行到running job就卡住了 INFO mapreduce.Job: Running ...
- Ubuntu下Linux配置内核各种常见错误和解决办法
镜像下载.域名解析.时间同步请点击阿里云开源镜像站 这篇把Ubuntu下Linux配置内核各种常见错误和解决办法给大家讲解一下,希望可以帮助到大家. 一.Ubuntu系统中缺少各种依赖包导致的问题 1 ...
- 使用wubi安装ubuntu14.04出现的常见错误的解决办法
花了一天的时间终于安装上了Ubuntu14.04,过程坎坷,是血泪史,开始报“cannot download the metalink and therefore the ISO”错误,解决后,又报“ ...
- 【LNMP】提示Nginx PHP “No input file specified”错误的解决办法
原理: 任何对.php文件的请求,都简单地交给php-cgi去处理,但没有验证该php文件是否存在. PHP文件不存在,没办法返回普通的404错误,它返回 一个404,并带上一句”No input f ...
随机推荐
- Java实现 LeetCode 793 阶乘函数后K个零 (分析)
793. 阶乘函数后K个零 f(x) 是 x! 末尾是0的数量.(回想一下 x! = 1 * 2 * 3 * - * x,且0! = 1) 例如, f(3) = 0 ,因为3! = 6的末尾没有0:而 ...
- ASP.NET中LINQ的基本用法
此Demo只是一个极其简单的LINQ查询Demo 一个类 using System; using System.Collections.Generic; using System.Linq; usin ...
- Java实现 LeetCode 561 数组拆分 I(通过排序算法改写PS:难搞)
561. 数组拆分 I 给定长度为 2n 的数组, 你的任务是将这些数分成 n 对, 例如 (a1, b1), (a2, b2), -, (an, bn) ,使得从1 到 n 的 min(ai, bi ...
- java 实现 蓝桥杯 算法提高 排列数
问题描述 0.1.2三个数字的全排列有六种,按照字母序排列如下: 012.021.102.120.201.210 输入一个数n 求0~9十个数的全排列中的第n个(第1个为0123456789). 输入 ...
- 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'xxxx'中的标识列指定显式值
执行以下sql INSERT INTO [Country] VALUES (, N'中国', N'China', N'CN'); 提示错误 仅当使用了列列表并且 IDENTITY_INSERT 为 O ...
- Flutter upgrade更新版本引发的无法启动调试APP的错误 target:kernel_snapshot failed”
前言 我的主机上的Flutter 本地的分支是在 beta,因为去年想尝鲜Flutter Web,所以一直没切回来stable分支. 早上打开VSCode,右下角弹出了Flutter upgrade的 ...
- 制作seata docker镜像
seata是阿里巴巴的一款开源的分布式事务框架,官方已经支持docker了,但是因为业务的需要,需要自己定制. 制作docker镜像 官方的Dockerfile.下载seata-server-1.1. ...
- php 加反斜杠的原因与处理办法
php程序加反斜杠的原因就是要进行特殊字符的转义. 默认PHP 指令 magic_quotes_gpc是on的,这时候就可以用stripslashes() 函数删除自动添加的反斜杠. 用法就是:str ...
- 【请帮帮我】为什么www.52pjb.net总是不收录,最多只收录首页?
做的好多个网站百度搜索都百度收录了,可是在其中一个一直不百度收录?http://www.52pjb.net,求大神帮忙看看,很着急很着急
- PHP 实现过滤参数字符的方法
//参数处理函数2function RepPostVar2($val){ if($val!=addslashes($val)) { exit(); } if(substr($val,-1)==&quo ...