html基础整理(01居中 盒子问题)

时间:2023-03-09 18:01:56
html基础整理(01居中 盒子问题)

01 文字居中

将一段文字置于容器的水平中点,只要设置text-align属性即可:

 text-align:center;

02 容器水平居中

  先为该容器设置一个明确宽度,然后将margin的水平值设为auto即可

  div#container {
    width:760px;
    margin:0 auto;
  }

03文字的垂直居中

 单行容器 让行高与盒子高度的设置一致就可以直接让文字上下居中

 .content
{height: 35px; line-height: 35px;}

  

04 容器垂直 水平居中问题

        04-1 已经知道宽高的盒子:

        设置绝对定位,距离上方 左方 50%  在剪去自身盒子的一半的距离

.class1{
background-color: #ccc;
width: 200px;
height: 200px;
position: absolute;
top: 50%;
left: 50%;
margin-top: -100px;
margin-left: -100px;
}

用css3的  transform的属性 可以把margin-top 和 margin-left 剪掉的自身盒子一半替换掉

因为translate的百分比参照是自身盒子的宽高,所以,我们可以借助于这个配合定位实现居中

.class1{
background-color: #ccc;
width: 200px;
height: 200px;
position: absolute;
top: 50%;
left: 50%;
transform:translate(-50%,-50%);
}

     04-2 不知道宽高的盒子

  class2{
width: 200px;
height: 200px;
background-color:#6699FF;
margin:auto;
position: absolute;
left:;
top:;
right:;
bottom:;
}

    04-3转换成表格

   将盒子转换成表格 就可以用

 text-align: center;
vertical-align: middle;属性
 <div  id="class3">
<img src="pic.jpg" >
</div> .class3{
        width: 900px;
height: 900px;
border:1px solid #ccc;
display: table-cell;
text-align: center;
vertical-align: middle;
}        

05 font 属性的快捷写法

     font的快捷写法格式为

  body {
    font: font-style font-variant font-weight font-size line-height font-family;
  }

   原本样式

  body {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 13px;
    font-weight: normal;
    font-variant: small-caps;
    font-style: italic;
    line-height: 150%;
  }

 可以被写成

body {
    font: italic small-caps normal 13px/150% Arial, Helvetica, sans-serif;
  }

06 Text-transform和Font Variant

Text-transform用于将所有字母变成小写字母、大写字母或首字母大写:

   p {text-transform: uppercase}
  p {text-transform: lowercase}
  p {text-transform: capitalize}

  Font Variant用于将字体变成小型的大写字母(即与小写字母等高的大写字母)。

 p {font-variant: small-caps}

07 禁止自动换行

 如果你希望文字在一行中显示完成,不要自动换行,CSS命令如下:

 h1 { white-space:nowrap; }

08 link状态的设置顺序

link的四种状态,需要按照下面的前后顺序进行设置:

   a:link
  a:visited
  a:hover
  a:active

09 IE6的min-height

IE6不支持min-height,有两种方法可以解决这个问题:

001

 .element {
    min-height: 500px;
    height: auto !important;
    height: 500px;
  }

 共有三条CSS语句,第一句是针对其他浏览器设置最小高度,第三句是针对IE设置最小高度,第二句则是让其他浏览器覆盖第三句的设置。

002

 .element {
    min-height: 500px
    _height: 500px
  }

  _height只有IE6能读取。

 

10 透明

将一个容器设为透明,可以使用下面的代码:

 .element {
    filter:alpha(opacity=50);
    -moz-opacity:0.5;
    -khtml-opacity: 0.5;
    opacity: 0.5;
  }

第一行是IE专用的,第二行用于Firefox,第三行用于webkit核心的浏览器,第四行用于Opera。 

11 CSS阴影

外阴影:

  .shadow {
    -moz-box-shadow: 5px 5px 5px #ccc;
    -webkit-box-shadow: 5px 5px 5px #ccc;
    box-shadow: 5px 5px 5px #ccc;
  }

内阴影:

  .shadow {
    -moz-box-shadow:inset 0 0 10px #000000;
    -webkit-box-shadow:inset 0 0 10px #000000;
    box-shadow:inset 0 0 10px #000000;
  }

12 在IE6中设置PNG图片的透明效果

  .classname {
    background: url(image.png);
    _background: none;
    _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader
        (src='image.png', sizingMethod='crop');
  }

13  各类浏览器的专用语句

  /* IE6 and below */
  * html #uno { color: red }   /* IE7 */
  *:first-child+html #dos { color: red }   /* IE7, FF, Saf, Opera */
  html>body #tres { color: red }   /* IE8, FF, Saf, Opera (Everything but IE 6,7) */
  html>/**/body #cuatro { color: red }   /* Opera 9.27 and below, safari 2 */
  html:first-child #cinco { color: red }   /* Safari 2-3 */
  html[xmlns*=""] body:last-child #seis { color: red }   /* safari 3+, chrome 1+, opera9+, ff 3.5+ */
  body:nth-of-type(1) #siete { color: red }   /* safari 3+, chrome 1+, opera9+, ff 3.5+ */
  body:first-of-type #ocho { color: red }   /* saf3+, chrome1+ */
  @media screen and (-webkit-min-device-pixel-ratio:0) {
    #diez { color: red }
  }   /* iPhone / mobile webkit */
  @media screen and (max-device-width: 480px) {
    #veintiseis { color: red }
  }   /* Safari 2 - 3.1 */
  html[xmlns*=""]:root #trece { color: red }   /* Safari 2 - 3.1, Opera 9.25 */
  *|html[xmlns*=""] #catorce { color: red }   /* Everything but IE6-8 */
  :root *> #quince { color: red }   /* IE7 */
  *+html #dieciocho { color: red }   /* Firefox only. 1+ */
  #veinticuatro, x:-moz-any-link { color: red }   /* Firefox 3.0+ */
  #veinticinco, x:-moz-any-link, x:default { color: red }   /***** Attribute Hacks ******/   /* IE6 */
  #once { _color: blue }   /* IE6, IE7 */
  #doce { *color: blue; /* or #color: blue */ }   /* Everything but IE6 */
  #diecisiete { color/**/: blue }   /* IE6, IE7, IE8 */
  #diecinueve { color: blue\9; }   /* IE7, IE8 */
  #veinte { color/*\**/: blue\9; }   /* IE6, IE7 -- acts as an !important */
  #veintesiete { color: blue !ie; } /* string after ! can be anything */