1.注释须知:html中注释不能这样写:
  <div></div><!--------这是错误写法------->
  <div></div><!--=======这是正确写法========-->
  这种写法,FF中会忽略其下面的内容.

  2.CSS注释切记在/*之后及*/之前空一格,否则在有些语言中会出问题,正确写法:
  #div{style}/* 注释前后要空格 */

  3.最简单区分IE与FF的HACK写法
  #layer{
  padding-top:20px;/* FF中定义 */
  *padding-top:10px;/* IE中定义 */
  }

  4.空div在IE(FF中没有)是有默认高度的,可以用定义:
  div{ witdh:100%; background:#9c0; ling-height:0}
  的方式去掉默认高度.

  5.按钮按下时立体感效果:
  a:hover{ position:relative; top:1px; left:1px}/* 切记一定要是相对定位 */

  6.关闭当前页面代码:
  <div onclick="window.close();">关闭当前页面</div>

  7.整站变灰代码(加到样式表中):
  html{ filter:progid:DXImageTransform.Microsoft.BasicImage(grayscale=1);}

  8.设为首页代码:
  <span onclick="var strHref=window.location.href;this.style.behavior='url(#default#homepage)';this.setHomePage('http://keleyi.com');" style="CURSOR:hand;">设为首页</span>

  9.加入收藏代码:
  <script language="JavaScript">
  function ITRenCai()
  {window.external.addFavorite('http://keleyi.com','柯乐义');}
  if (document.all)document.write('<a href="javascript:void(0);" onClick="ITRenCai();" title="把“柯乐义网”加入您的收藏夹!">收藏本站</a>')
  </script>

  10.导航间竖线的定义方法:
  css部分:
  .nav{
  width:408px;/* 这个宽度一定要按li中的宽度算好 */
  float:right;
  display:inline;
  overflow:hidden;
  }
  .nav ul{
  margin:0;
  padding:0
  }
  .nav li{
  float:right;
  width:80px;
  height:auto;
  text-align:center;
  padding:0 10px;
  border-right:1px solid #444;
  margin-right:-1px;
  }
  html部分:
  <div class="nav">
  <ul>
<li><a href="http://keleyi.com/">柯乐义首页</a></li>
<li><a href="http://keleyi.com/menu/webqd/">Web前端</a></li>
<li><a href="http://keleyi.com/menu/jquery/">jquery资源</a></li>
<li><a href="http://keleyi.com/menu/csharp/">C#资讯</a></li>
<li><a href="http://keleyi.com/menu/other/">网络编程</a></li>
  </ul>
  </div>

  11.中英文下划线对齐方式(利用图片的align="absmiddle"):
  <img src="img.gif" align="absmiddle">中英文并排:<a href="/">中文 gollum</a>

  12.li交替显示背景代码:
  ul{
  list-style:none;
  font-size:12px;
  line-height:20px;
  color:#666;
  }
  ul li{
  background-color:e?xpression(this.sourceIndex%2==0?'#EAF8FD':'#ffffff');
  }

  13.利用css reset规避IE6下密码表单和文本不等长的问题,在css reset中加入:
  input{font-family:Arial, Helvetica, sans-serif;}

  14.FF下上边距无效时,及时反应给父级div上写入overflow:hidden或overflow:auto;也可以在子级div中写入float:left; display:inline.

  15.描边文字效果:
  <div style="position:relative; width:200px; height:25px; line-height:25px; text-align:center; font-size:14px; color:#fff; background:#9c0;">
  这是描边文字<span style="position:absolute; left:-1px; top:-1px; color:#444;width:200px; height:25px; display:block">这是描边文字</span>
  </div>

  16.通过定义em实现小三角效果:
  *{font-size:14px;/* 必须通配字体大小 */}
  em{display:block;
  font:0/0 "宋体";/* 经本人摸索,只有在宋体下才最为标准 */
  border:7px solid;/* border值越大,三角形越大 */
  border-color:#fff #fff #fff #444;/* 通过改变颜色值,可产生不同效果,自己实验 */
  margin-top:5px;
  }
  在样式中加入以上代码后,在body中用<em></em>即可得到小三角效果.

  17.如果在FF中测试发现层错位或者下面的层跑到顶上了,八九不离十是没清除浮动的原因,在出问题那个层样式中加入:
  clear:both 即可.

  18.IE6下当层高低于10px时,会出现高度在定义值上加10px的效果,最简单的方法就是在该层样式中加入:
  font-size:0;
  立马将其打回原形.

  19.布局中栏目分割遵循62%:38%的原则.

  20.文字段在容器内超宽时,截断该文字段并且续以省略号:
  overflow:hidden;text-overflow:ellipsis;
  这两具是连体的,单一用有问题.并且在FF下貌似无效,摸索中..

  21.display之line-block的HACK:
  .menu{
  display:-moz-inline-stack;/* 专属FF也可以用-moz-inline-box定义 */
  *display:inline;
  zoom:1;/* 上一行和此行用于激活IE6/7的layout,实现类似效果 */
  }

  22.透明度滤镜的用法:
  .navbg {
  filter:alpha(opacity=40); /* IE */
  -moz-opacity:0.4; /* Moz + FF */
  opacity: 0.4; /* 支持CSS3的浏览器(FF 1.5也支持)*/
  }

  23.在WEB标准中,h1在同一页面中只能出现一次.这个概念知道的人很多,但使用时忽略的人也相当的多.

  24.表格边框颜色的定义不能缩写,比如:
  bordercolor="#3399cc"
  不能写成:
  bordercolor="#39c"

  25.行高定义最便捷的方法,在body中加入:
  line-height:1.5; /* 1.5不能有单位,含义为字体大小的1.5倍,可自定义 */
  如果某些文本不想以这个行高为标准,可以根据CSS优先级重新定义.

  26.当图像不存在时,可用一张通用图片代替显示:
  <img src="data:image.gif" onerror="this.src='noimage.gif'" />

  27. 检索或设置对象的层叠顺序:
  z-index:auto|number
  此属性仅仅作用于position属性值为relative 或absolute时的对象.看个DEMO

  28.使一个层垂直居中于浏览器中:
  div {
  position:absolute;
  top:50%;
  left:50%;
  margin:-100px 0 0 -100px;
  width:200px;
  height:200px;
  border:1px solid red;
  }

使用html和css的一些经验的更多相关文章

  1. css定位学习经验记录

    之前了解到css的定位position属性,常用的三种: position:absolute 1.当父元素定位为relative时,以父元素为起始坐标定位. 2.当父元素没有定位时,以body为起始坐 ...

  2. CSS技巧和经验:

    1. 如何清除图片下方出现几像素的空白间隙 方法1 img { display: block; } 方法2 img { vertical-align: top; } // 除了top值,还可以设置为t ...

  3. CSS技巧和经验

    如何清除图片下方出现几像素的空白间隙 方法1 img { display: block; } 方法2 除了top值,还可以设置为text-top | middle | bottom | text-bo ...

  4. css样式继承经验记录

    与元素(文字颜色.字体等)相关的样式默认会被继承: 与元素在页面上的布局相关的样式默认不会被继承: <body> <p>I like <span>aplles< ...

  5. Html.CSS.JavaScript 学习经验

    HTML里面 不要使用 document.getElementsByName() 来获取 元素,会出错. 使用 document.getElementById()更好一些. substring()首字 ...

  6. CSS技巧和经验列表

    如何清除图片下方出现几像素的空白间隙? img{display:block;} 如何让文本垂直对齐文本输入框? input{vertical-align:middle;} 如何使文本溢出边界显示为省略 ...

  7. css知多少(7)——盒子模型

    1. 引言 从这一节开始,我们就进入本系列的第三部分——css呈现.本部分将描述css在页面的几种布局和呈现的特性.包括两类:文字.块. 第一类——文字.这部分相对比较简单一些,例如设置字号.字体.颜 ...

  8. 浅谈对CSS的认识

    自从进公司也有2个多月了,相信和我一批进来的小伙伴们都收获了很多东西,这个是在学校所学不到的,也让成长了很多.作为新人的我,从认为CSS是个很简单的东西,到现在觉得CSS中水很深,感觉学了很多的CSS ...

  9. 说说CSS学习中的瓶颈

    虽已数年,但未就学习专门写过文章,这回破处了.苍蝇不叮没有缝隙的鸡蛋,领导不做没有跟拍的表演,同样,想到写CSS学习的文章也是有原因的(虽然我的不少行为没有原因). 情景再现(尊重隐私,下面故事中人名 ...

随机推荐

  1. 我和Markdown故事

    我遇见了Markdown 我喜欢的地方 我要吐槽的地方 适用人群和使用场景 Markdown使用简介 如何入门? Markdown编辑器们 如何在博客园中使用Markdown 引用 我遇见了Markd ...

  2. 细说.NET中的多线程 (三 使用Task)

    上一节我们介绍了线程池相关的概念以及用法.我们可以发现ThreadPool. QueueUserWorkItem是一种起了线程之后就不管了的做法.但是实际应用过程,我们往往会有更多的需求,比如如果更简 ...

  3. android 中listview之BaseAdapter的使用

    Listview控件不像其他安卓控件那种直接拖拽到界面上就能用,而是采用类似J2EE中的MVC模型的方式使用,需要通过适配器将某种样式的数据或控件添加到其上而使用. MVC模型实现原理是 数据模型M( ...

  4. Java-继承,多态0922-05

    28.按要求编写一个Java应用程序: (1)定义一个类,描述一个矩形,包含有长.宽两种属性,和计算面积方法. (2)编写一个类,继承自矩形类,同时该类描述长方体,具有长.宽.高属性, 和计算体积的方 ...

  5. 知方可补不足~SQL2008中的发布与订阅模式

    回到目录 作用:完成数据库与数据库的数据同步 原理:源数据库发布需要同时的表,存储过程,或者函数:目标数据库去订阅它,当源发生变化时,目标数据库自己同步,注意,由于这个过程是SQL自动完成的,所以要求 ...

  6. 基础才是重中之重~方法override详解

    回到 目录 之所以写这篇文章,完全是因为这次代码审核,这次代码审核过程当中,出现了很多我认为基础知识不够扎实的问题,所以,打算把它们记录下来,共大家分享. 方法的override,即方法的覆写或者重写 ...

  7. MySQL账户安全设置

    一般来说,安装完MySQL后,默认的用户是root,密码123456,外网不能访问. 有时候也希望在外网访问,则可以添加一个账户.建议不要用root. 如下表,存在安全问题: mysql> se ...

  8. lua实现深度拷贝table表

    lua当变量作为函数的参数进行传递时,类似的也是boolean,string,number类型的变量进行值传递.而table,function,userdata类型的变量进行引用传递.故而当table ...

  9. Java线程:线程的交互

      一.线程交互的基础知识   SCJP所要求的线程交互知识点需要从java.lang.Object的类的三个方法来学习:    void notify()           唤醒在此对象监视器上等 ...

  10. iOS 屏幕适配:autoResizing autoLayout和sizeClass

    1. autoResizing autoresizing是苹果早期的ui布局适配的解决办法,iOS6之前完全可以胜任了,因为苹果手机只有3.5寸的屏幕,在加上手机app很少支持横屏,所以iOS开发者基 ...