zoukankan      html  css  js  c++  java
  • html进阶css(4)

    盒子模型-边框

    首先请看下图

    <!doctype html>
    <html>                           
    <head> 
                <meta charset="utf-8">      
                <title>盒子模型边框</title>  
                <style type="text/css">
                 p{border:2px solid red;}/*border的缩写格式*/
                 p{
                  border-width:2px;
                  borerstyle:solid;
                  border-color:red;
                   }
                  .pingguo{border-bottom:1px solid red;}
                  .xiangjiao{border-top:1px solid red;}
                  .mangguo{border-right:1px solid yellow;}
                  .juzi{border-left:2px solid red;}
    </style>
    </head>
    <body>
             <p>她是个既安静又开朗的姑娘,言语恰到好处,有她在,既不会觉得聒噪,也不会感到冷场。</p>
             <p>她周到地照顾着每个人的情绪,也能委婉地表达自己的观点。她散发着温和的光彩,从不灼痛别人的世界。</p>
                 <ul>
                     <li class="pingguo">苹果</li>
                     <li class="xiangjiao">香蕉</li>
                     <li class="mangguo">芒果</li>
                     <li class="juzi">橘子</li>
                 </ul>
     </body>
    </html>

      1)border-style边框样式常用样式:

     dashed(虚线)dotted(点线)solid(实线)

      2)border-color边框颜色中的颜色可设置为十六进制颜色,

    border-color:#888;

      3) border-width边框的宽度中的宽度也可以设置为:

    thin|medium|thick这些都不常用,最常用的还是像素px。

    如有想单独设置上(top)、下(bottom)、左(left)、右(right)。的边框按照以下格式即可 

    (.pingguo{border-bottom:1px solid red;})

    (.xiangjiao{border-top:1px solid red;})

    (.mangguo{border-right:1px solid yellow;})

     (.juzi{border-left:2px solid red;})


    
    

    div内里面就是一个盒子模型的格式

     盒子3d模型分5层,边框border为第一层,padding+content内边距与盒子内容为第二层

    background-image背景图像为第三层,background-color背景颜色位于第4层,margin外边距为最后一层。叠加之后形成一个盒子

     

    <!doctype html>
    <html>
              <head>
                         <meta charset="utf-8">
                         <title>宽高</title>
                         <style type="text/css">
                              div{
                                width:200px;
                                padding:20px;
                                border:1px solid red;
                                margin:10px;
                                     }     
                                div{padding:20px 10px 15px 30px}
                                          /*上   右    下    左
                                          top |right|bottom|left |这是盒子模型的缩写*/
                               .hez{margin:20px 10px 15px  30px}
                                          /*上   右   下     左    同上一样*/
                          </style>
              </head>
        <body>
                           <div><p>她是个既安静又开朗的姑娘,言语恰到好处,有她在,既不会觉得聒噪,也不会感到冷场。她周到地照顾着每个人的情绪,也能委婉地表达自己的观点。她散发着温和的光彩,从不灼痛别人的世界。</p>
                           </div>
                           <p class="hez">盒子模型的边界</p>
              </body>
    </html>

    元素内容与边框之间是可以设置距离的,称之为“填充”。填充也分为上、右、下、左、顺序一定不要搞乱.

    如果上、右、下、左、的填充都为10px,可以这样写:

    div{padding:10px;}

    如果上下填充一样为10px,左右一样为20px,就可以这样写:

    div{padding:10px 20px;}

    padding与margin书写格式是一样的。

    padding与margin的区别,padding在边框里面,margin在边框外面


    css布局模型

    了解了css合模型的基本概念、盒模型类型、我们就可以深入讨论网页布局的基本模型了。布局模型与盒模式一样都是css最基本、最核心的概念。但布局模型是建立在盒模型之上,又不同与我们常说的css布局样式或css布局模块。如果说布局模型是本,那么css布局模式就是末了,是外在的表现形式。css包含3种基本的布局模型,用英文概况为:flow、layer和float.

    在网页中,元素由三种布局模型:

    1)流动模型(flow)

    流动模型是默认的网页布局模式,也就是说网页在默认状态下的HTML网页元素都是根据流动模型来分布网页内容的。流动布局模型具有2个比较典型的特征:

    第一点,块状元素都会在所处包含元素内自上而下按顺序垂直延伸分布,因为在默认状态下,块状元素的宽度都为100%。实际上块状元素都会以行的形式占据位置。

    第二点,在流动模式下,内联元素都会在所处的包含元素内从左到右水平分布显示。

    2)浮动模型(float)

     块状元素都是独占一行,如果现在我们想让两个块状元素并排显示怎么办?这时候设置元素浮动就可以实现这一愿望了,任何元素在默认的情况下是不能浮动的,但可以用css定义为浮动。如div、p、table、img、等元素都可以被定义为浮动。

    <!doctype html>
    <html>
    <head>
                <meta charset="utf-8">
                <title>浮动模型</title>
                <style type="text/css">
                       div{
                              width:200px;
                              height:200px;
                              border:2px red solid;
                              }
                       div{
                              float:left;
                             }
                </style>
    </head>
    <body>
                 <div id="div1"></div>
                 <div id="div2"></div>
    </body>
    </html>

    通过"float"已经并排显示了,“left"向左移动,"right"向右移动,如果想两个元素一左一右显示在一行的话,就要用id标签了。#div1{float:left;}     #div2{float:right;}

    3)层模型(layer)
    层模型就像是图像软件中非常流行的图层编辑功能一样,每个图层能精确定位操作,但在网页设计领域,由于网页大小的活动性,层布局没能受到热捧。但是在网页上局部使用层布局还是有其方便之处的。如果让html元素在网页中精准定位,就像图像软件中图层一样可以对每个图层能够精确定位操作。css定义了一组定位(positioning)属性来支持层布局模型。

    层模式有三种形式

    1、绝对定位(position:absolute)

    2、相对定位(position:relative)

    3、固定定位(position:fixed)

    关于层模型三种形式我们下节在看。

  • 相关阅读:
    JS判断年月
    斐波那契数列
    webkit 控件供vb 6 调用,不错~
    webkit com wrapper 推荐!
    firefox usercontrol for donet
    [z] How can we render CSS3 in a WebBrowser Control ?
    A simple way to crack VBA password in Excel file
    putty教程
    Putty建立隧道的方法[z]
    Step By Step Hibernate Tutorial Using eclipse WTP[z]
  • 原文地址:https://www.cnblogs.com/liang1/p/4905903.html
Copyright © 2011-2022 走看看