盒相關樣式

盒的類型

1.inline-block類型

屬於block類型盒的一種,但顯示時具有inline類型盒的特點

以前如果要在一行中並列顯示多個block類型元素,需要使用float屬性,這會使得樣式複雜。因此追加inline-block類型使得並列顯示多個block類型變的簡單

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        div.inlineblock{display:inline-block;background-color:#00aaff;width:300px;}
        /* 寬,高設定對於inline類型來說無效 */
        div.inline{display:inline;background-color:#aaff00;width:300px;}
        </style>
    </head>
    <body>
        <div>
            <div class="inlineblock">inline-block類型</div>
            <div class="inlineblock">inline-block類型</div>
        </div>
        <div>
            <div class="inline">inline類型</div>
            <div class="inline">inline類型</div>
        </div>
    </body>
</html>

 

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        /*#a,#b{display:block;width:200px;float:left;}*/
        div{display:inline-block;width:200px;vertical-align:top;}
        #a{background-color:#0088ff;}
        #b{background-color:#00ccff;}
        #c{width:400px;background-color:#ffff00;}
        
        ul{margin:0;padding:0;}
        li{
            display:inline-block;
            background-color:#00ccff;
            border:solid 1px #666666;
            text-align:center;
        }
        a{
            display:inline-block;
            color:#000000;
            text-decoration:none;
            background-color:#ffcc00;
            width:100px;
        }
        </style>
    </head>
    <body>
        <div id="a">A A A A A A A A A A A A A A A A A A A A A A A A A A A A</div>
        <div id="b">B B B B B B B B B B B B B B B B B B B B B B B B B B B B</div>
        <div id="c">C C C C C C C C C C C C C C C C C C C C C C C C C C C C</div>
        <ul>
            <li><a href="#">菜單1</a></li>
            <li><a href="#">菜單2</a></li>
            <li><a href="#">菜單3</a></li>
        </ul>
    </body>
</html>


2.inline-table類型

例中tabel為block類型,不能與其他文字處於同一行,如果修改為inline-table類型,可讓表格與其他文字處於同一行中

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        table{display:inline-table;border:solid 3px #00aaff;vertical-align:bottom;}
        td{border:solid 2px #ccff00;padding:5px;}
        </style>
    </head>
    <body>
        哈羅
        <table>
            <tr>
                <td>A</td><td>B</td><td>C</td>
            </tr>
            <tr>
                <td>D</td><td>E</td><td>F</td>
            </tr>
            <tr>
                <td>G</td><td>H</td><td>I</td>
            </tr>
        </table>
        哈羅
    </body>
</html>

 

3.list-item類型

可將多元素作為列表顯示,同時在元素開頭加上列表標記

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        div{display:list-item;list-style-type:circle;margin-left:30px;}
        </style>
    </head>
    <body>
        <div>列表1</div>
        <div>列表1</div>
        <div>列表1</div>
    </body>
</html>


4.run-in類型與compact類型

如果元素後面還有block類型元素,run-in類型元素被包含在block類型元素內部

compact類型元素被放置在block類型元素左邊

目前只被Opera,Safari瀏覽器支持

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        dl#runin dt{display:run-in;border:solid 2px red;}
        dl#compact dt{display:compact;border:solid 2px red;}
        dd{margin-left:100px;background-color:Yellow;}
        </style>
    </head>
    <body>
        <dl id="runin">
            <dt>一</dt>
            <dd>解釋一</dd>
        </dl>
        <dl id="compact">
            <dt>二</dt>
            <dd>解釋二</dd>
        </dl>
    </body>
</html>

 

5.表格相關類型

table:整個表格                                              inline-table:整個表格

table-row:表格一行                                      table-cell:表格單元格

table-row-group:表格中所有行                  table-header-group:表頭

table-footer-group:表格註腳                      table-column:表格一列

table-column-group:表格所有列               table-caption:表格標題

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        .table{display:table;border:solid 3px #00aaff;}
        .caption{display:table-caption;text-align:center;}
        .tr{display:table-row;}
        .td{display:table-cell;border:solid 2px #aaff00;padding:10px;}
        .thead{display:table-header-group;background-color:#ffffaa;}
        </style>
    </head>
    <body>
        <div class="table">
            <div class="caption">表格</div>
            <div class="thead">
                <div class="tr">
                    <div class="td">1</div>
                    <div class="td">2</div>
                </div>
            </div>
            <div class="tr">
                <div class="td">A</div>
                <div class="td">B</div>
            </div>
            <div class="tr">
                <div class="td">C</div>
                <div class="td">D</div>
            </div>
        </div>
    </body>
</html>

 

6.none類型

指定為none類型后,元素將不顯示

 

對於盒中容不下的內容的顯示

1.overflow屬性

overflow:hidden 超出部份隱藏不顯示

overflow:scroll 出現固定水平,垂直滾動條

overflow:auto 當內容超出是,根據需要出現水平或垂直滾動條

overflow:visible 效果與不用overflow屬性時一樣

 

2.overflow-x屬性與overflow-y屬性

可單獨指定在水平或垂直方向上內容超出時的顯示方法

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        div{
            overflow-x:scroll;
            overflow-y:hidden;
            width:70px;
            height:70px;
            border:solid 1px orange;
        }
        </style>
    </head>
    <body>
        <div class="table">
            哈羅哈羅哈羅
            哈羅哈羅哈羅
            哈羅哈羅哈羅
            哈羅哈羅哈羅
            哈羅哈羅哈羅
        </div>
    </body>
</html>


3.text-overflow屬性

當吧overflow屬性設置為hidden,將隱藏超出內容,結合text-overflow屬性,可在末尾加一個省略號(僅在水平方向上超出容納範圍時有效)

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        div{
            overflow:hidden;
            text-overflow:ellipsis;
            /* Safari瀏覽器寫法 */
            -webkit-text-overflow:ellipsis;
            /* Opera瀏覽器寫法 */
            -o-text-overflow:ellipsis;
            /* 不允許換行 */
            white-space:nowrap;
            width:100px;
            border:solid 1px orange;
        }
        </style>
    </head>
    <body>
        <div>
            哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅
        </div>
    </body>
</html>


對盒使用陰影

box-shadow:length length length color;

該屬性得到Safari瀏覽器和FireFox瀏覽器支持

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        div{
            background-color:#ffaa00;
            /* FF瀏覽器寫法 */
            -moz-box-shadow:10px 10px 10px gray;
            /* Safari瀏覽器寫法 */
            -webkit-box-shadow:10px 10px 10px gray;
            width:200px;
            height:100px;
        }
        </style>
    </head>
    <body>
        <div></div>
    </body>
</html>

 

1.對盒內子元素使用陰影

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        div{
            width:400px;height:200px;
            -moz-box-shadow:2px 2px 10px gray;
            -webkit-box-shadow:2px 2px 10px gray;
        }
        div.span
        {
            display:inline-block;
            width:auto;height:auto;
            background-color:#ffaa00;
            -moz-box-shadow:2px 10px 10px gray;
            -webkit-box-shadow:2px 10px 10px gray;
        }
        </style>
    </head>
    <body>
        <div>哈羅哈羅哈羅哈羅<div class="span">哈羅哈羅哈羅哈羅</div>哈羅哈羅哈羅哈羅哈羅</div>
    </body>
</html>

注:在FF下測試,必須要寫成這樣,子元素才有陰影,原因不明

 

2.對第一個文字或第一行使用陰影

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        div:first-letter{
            font-size:22px;
            background-color:#ffaa00;
            -moz-box-shadow:10px 10px 10px gray;
            -webkit-box-shadow:10px 10px 10px gray;
        }
        </style>
    </head>
    <body>
        <div>哈羅</div>
    </body>
</html>

 

3.對表格或單元格使用陰影

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        table{
            border-spacing:10px;
            -moz-box-shadow:5px 5px 10px gray;
            -webkit-box-shadow:5px 5px 10px gray;
        }
        td{
            background-color:#ffaa00;
            -moz-box-shadow:5px 5px 10px gray;
            -webkit-box-shadow:5px 5px 10px gray;
            padding:10px;
        }
        </style>
    </head>
    <body>
        <table>
            <tr>
                <td>1</td><td>2</td><td>3</td>
            </tr>
            <tr>
                <td>4</td><td>5</td><td>6</td>
            </tr>
        </table>
    </body>
</html>


指定針對元素的寬高的計算法 box-sizing屬性

CSS中,使用width與height屬性指定元素寬高。但使用box-sizing屬性,可指定width,height屬性分別指定的寬度值與高度值是否包含元素內部的補白區,及邊框寬,高。box-sizing屬性的目的是控制元素的總寬度。

box-sizing:content-box; (默認)元素的寬度與高度不包括內部補白區域,以及邊框的寬度高度

box-sizing:border-box; 元素的寬度與高度包括內部補白區域,以及邊框的寬度高度

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <style type="text/css">
        div
        {
            width:300px;
            border:solid 30px #ffaa00;
            padding:30px;
            background-color:#ffff00;
            margin:20px auto;    
        }
        #div1
        {
            box-sizing:content-box;
            -moz-box-sizing:content-box;
            -webkit-box-sizing:content-box;
            -ms-box-sizing:content-box;   
        }
        #div2
        {
            box-sizing:border-box;
            -moz-box-sizing:border-box;
            -webkit-box-sizing:border-box;
            -ms-box-sizing:border-box;   
        }
        </style>
    </head>
    <body>
        <div id="div1">
        哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅
        哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅
        </div>
        <div id="div2">
        哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅
        哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅哈羅
        </div>
    </body>
</html>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,关于如何给子设置悬停样式,可以使用CSS的:hover选择器来实现。具体的做法是先定义一个样式,比如: .box { width: 200px; height: 200px; background-color: #ccc; } 然后设置:hover选择器: .box:hover { background-color: #f00; } 这段代码的意思是:当鼠标悬停在class名为"box"的子上时,将其背景颜色设置为红色。你可以根据实际需求修改样式效果或相关属性。 ### 回答2: 要给子设置悬停样式,可以使用CSS来实现。首先,我们需要在HTML代码中为待设置样式的子元素添加一个类名或者id。然后,在CSS中通过该类名或id来选择这个子元素。 例如,我们给一个类名为"box"的子添加悬停样式。在CSS中,我们可以使用:hover伪类来选择鼠标悬停在子上时的样式。假设我们想在子悬停时背景色变成红色,文字颜色变成白色,可以这样写: .box:hover { background-color: red; color: white; } 上面的代码中,.box:hover表示鼠标悬停在类名为"box"的子上时的样式。然后,分别使用background-color和color属性来设置子的背景色和文字颜色。 通过这种方式,当鼠标悬停在这个子上时,子的背景色就会变成红色,文字的颜色则会变成白色。同理,我们还可以设置其他样式属性,如字体大小、边框等。 总结来说,给子设置悬停样式的步骤包括:在HTML中为子元素添加类名或id,然后在CSS中使用:hover伪类来选择悬停状态的样式,最后设置各种样式属性来实现悬停效果。 ### 回答3: 要给子设置悬停样式,我们可以使用CSS来实现。首先,我们需要对需要设置悬停样式的子指定一个class或者id,例如:.box或#box。 接下来,在CSS中针对这个class或id添加悬停样式。可以使用:hover选择器来指定鼠标悬停时的样式,例如: .box:hover { background-color: yellow; } 上面的代码表示,在box类的子上鼠标悬停时,子的背景颜色将变成黄色。 除了改变背景颜色,还可以修改其他CSS属性,比如字体颜色、边框样式等。例如: .box:hover { background-color: yellow; color: white; border: 1px solid black; } 上面的代码还将在鼠标悬停时将字体颜色设置为白色,边框样式设置为1像素的黑色实线。 除了:hover选择器,也可以使用JavaScript来实现悬停效果。通过监听鼠标移入和移出事件,来改变子的样式。具体可以使用onmouseover和onmouseout事件来实现。 总之,无论是使用CSS还是JavaScript,给子设置悬停样式都是相对简单的操作。只需要选择合适的选择器或事件,并指定需要改变的样式即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值