简单过渡页面制作及遇到问题的延伸

一、HTML结构布局

用无序列表来布局,中间文字用h标签达到换行的效果。

    <ul>
        <li>
            <h1>欢迎来到召唤师峡谷!</h1>
            <h3>敌军还有30秒到达战场!</h3>
        </li>
        <li>
            <h1>欢迎来到召唤师峡谷!</h1>
            <h3>敌军还有30秒到达战场!</h3>
        </li>
        <li>
            <h1>欢迎来到召唤师峡谷!</h1>
            <h3>敌军还有30秒到达战场!</h3>
        </li>
        <li>
            <h1>欢迎来到召唤师峡谷!</h1>
            <h3>敌军还有30秒到达战场!</h3>
        </li>
    </ul>

二、css制作部分

css部分主要分为三部分,整体的样式添加、伪类选择器的使用、过渡的添加。

1、整体样式:

  * {
            padding: 0;
            margin: 0;
        }
        
        ul {
            margin-top: 50px;
        }
        
        li {
            list-style: none;
            width: 500px;
            height: 100px;
            background-color: #87ceeb;
            margin: 10px auto;
            text-align: center;
            border-left: 10px solid #000;
            padding-top: 15px;
            cursor: pointer;
            box-sizing: border-box;
        }

2、伪类选择器的使用:

        li:hover {
            background-color: #000;
            color: #fff;
            border-left: 10px solid tomato;
        }
        
        li:hover h1 {
            font-size: 18px;
        }
        
        li:hover h3 {
            font-size: 28px;

3、过渡的添加:

        li,
        h1,
        h3 {
            transition: all 800ms linear;
        }

三、页面效果

1、伪类未触发时:

 

2、伪类触发时:

 四、问题

在对h1、h3居中时发现,h1的上边框和div盒子的上边框重合,用padding-top时,div的高度会变大。

解决方案:给div加一个box-sizing:border-box; 此时给盒子用padding-top时,div的高度就吧会改变。

起初我想用line-height: 100px;来完成上下居中的效果,但是此盒子内的是多行文字,用此方法不能预期效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值