老师那个border-bottom添加后样式没有变化

老师那个border-bottom添加后样式没有变化

<template>

    <div>

        <div class="title">热卖推荐</div>

        <ul>

            <li class="item border-bottom">

                <img class="item-img" src="http://img1.qunarzz.com/sight/p0/1409/19/adca619faaab0898245dc4ec482b5722.jpg_140x140_80f63803.jpg" alt="">

                <div class="item-info">

                    <p class="item-title">大连圣海海洋世界</p>

                    <p class="item-desc">浪漫大连首站,浪漫的海洋主题公园</p>

                    <button item="item-button">查看详情</button>

                </div>

            </li>

        </ul>

    </div>

</template>


<script>

    export default {


    }

</script>


<style lang="stylus" scoped>

.title

    margin-top  .2rem

    background-color #eee

    line-height .8rem

    text-indent .2rem

.item

    overflow:hidden

    display flex

    height 1.9rem

    .item-img

        width 1.7rem

        height 1.7rem

        padding .1rem

    .item-info

        flex 1

</style>


main.js也引入了

// The Vue build version to load with the `import` command

// (runtime-only or standalone) has been set in webpack.base.conf with an alias.

import Vue from 'vue'

import App from './App'

import router from './router'

import fastClick from 'fastclick'

import VueAwesomeSwiper from 'vue-awesome-swiper'

import './assets/styles/reset.css'

import './assets/styles/border.css'

import './assets/styles/iconfont.css'

import 'swiper/dist/css/swiper.css'


Vue.config.productionTip = false

fastClick.attach(document.body)

Vue.use(VueAwesomeSwiper)


/* eslint-disable no-new */

new Vue({

  el: '#app',

  router,

  fastClick,

  components: { App },

  template: '<App/>'

})



正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

5回答
好帮手慕星星 2020-05-21 19:06:45

同学你好,使用同学粘贴的css样式,底边框确实是存在的,只是不太明显而已

http://img1.sycdn.imooc.com//climg/5ec660b60974c96f18250336.jpg

建议按照老师查找的方式在控制台看一下。

祝学习愉快!

提问者 lcyjerry 2020-05-21 18:58:03

@charset "utf-8";

.border,

.border-top,

.border-right,

.border-bottom,

.border-left,

.border-topbottom,

.border-rightleft,

.border-topleft,

.border-rightbottom,

.border-topright,

.border-bottomleft {

    position: relative;

}

.border::before,

.border-top::before,

.border-right::before,

.border-bottom::before,

.border-left::before,

.border-topbottom::before,

.border-topbottom::after,

.border-rightleft::before,

.border-rightleft::after,

.border-topleft::before,

.border-topleft::after,

.border-rightbottom::before,

.border-rightbottom::after,

.border-topright::before,

.border-topright::after,

.border-bottomleft::before,

.border-bottomleft::after {

    content: "\0020";

    overflow: hidden;

    position: absolute;

}

/* border

 * 因,边框是由伪元素区域遮盖在父级

 * 故,子级若有交互,需要对子级设置

 * 定位 及 z轴

 */

.border::before {

    box-sizing: border-box;

    top: 0;

    left: 0;

    height: 100%;

    width: 100%;

    border: 1px solid #eaeaea;

    transform-origin: 0 0;

}

.border-top::before,

.border-bottom::before,

.border-topbottom::before,

.border-topbottom::after,

.border-topleft::before,

.border-rightbottom::after,

.border-topright::before,

.border-bottomleft::before {

    left: 0;

    width: 100%;

    height: 1px;

}

.border-right::before,

.border-left::before,

.border-rightleft::before,

.border-rightleft::after,

.border-topleft::after,

.border-rightbottom::before,

.border-topright::after,

.border-bottomleft::after {

    top: 0;

    width: 1px;

    height: 100%;

}

.border-top::before,

.border-topbottom::before,

.border-topleft::before,

.border-topright::before {

    border-top: 1px solid #eaeaea;

    transform-origin: 0 0;

}

.border-right::before,

.border-rightbottom::before,

.border-rightleft::before,

.border-topright::after {

    border-right: 1px solid #eaeaea;

    transform-origin: 100% 0;

}

.border-bottom::before,

.border-topbottom::after,

.border-rightbottom::after,

.border-bottomleft::before {

    border-bottom: 1px solid #eaeaea;

    transform-origin: 0 100%;

}

.border-left::before,

.border-topleft::after,

.border-rightleft::after,

.border-bottomleft::after {

    border-left: 1px solid #eaeaea;

    transform-origin: 0 0;

}

.border-top::before,

.border-topbottom::before,

.border-topleft::before,

.border-topright::before {

    top: 0;

}

.border-right::before,

.border-rightleft::after,

.border-rightbottom::before,

.border-topright::after {

    right: 0;

}

.border-bottom::before,

.border-topbottom::after,

.border-rightbottom::after,

.border-bottomleft::after {

    bottom: 0;

}

.border-left::before,

.border-rightleft::before,

.border-topleft::after,

.border-bottomleft::before {

    left: 0;

}

@media (max--moz-device-pixel-ratio: 1.49), (-webkit-max-device-pixel-ratio: 1.49), (max-device-pixel-ratio: 1.49), (max-resolution: 143dpi), (max-resolution: 1.49dppx) {

    /* 默认值,无需重置 */

}

@media (min--moz-device-pixel-ratio: 1.5) and (max--moz-device-pixel-ratio: 2.49), (-webkit-min-device-pixel-ratio: 1.5) and (-webkit-max-device-pixel-ratio: 2.49), (min-device-pixel-ratio: 1.5) and (max-device-pixel-ratio: 2.49), (min-resolution: 144dpi) and (max-resolution: 239dpi), (min-resolution: 1.5dppx) and (max-resolution: 2.49dppx) {

    .border::before {

        width: 200%;

        height: 200%;

        transform: scale(.5);

    }

    .border-top::before,

    .border-bottom::before,

    .border-topbottom::before,

    .border-topbottom::after,

    .border-topleft::before,

    .border-rightbottom::after,

    .border-topright::before,

    .border-bottomleft::before {

        transform: scaleY(.5);

    }

    .border-right::before,

    .border-left::before,

    .border-rightleft::before,

    .border-rightleft::after,

    .border-topleft::after,

    .border-rightbottom::before,

    .border-topright::after,

    .border-bottomleft::after {

        transform: scaleX(.5);

    }

}

@media (min--moz-device-pixel-ratio: 2.5), (-webkit-min-device-pixel-ratio: 2.5), (min-device-pixel-ratio: 2.5), (min-resolution: 240dpi), (min-resolution: 2.5dppx) {

    .border::before {

        width: 300%;

        height: 300%;

        transform: scale(.33333);

    }

    .border-top::before,

    .border-bottom::before,

    .border-topbottom::before,

    .border-topbottom::after,

    .border-topleft::before,

    .border-rightbottom::after,

    .border-topright::before,

    .border-bottomleft::before {

        transform: scaleY(.33333);

    }

    .border-right::before,

    .border-left::before,

    .border-rightleft::before,

    .border-rightleft::after,

    .border-topleft::after,

    .border-rightbottom::before,

    .border-topright::after,

    .border-bottomleft::after {

        transform: scaleX(.33333);

    }

}



好帮手慕星星 2020-05-21 18:49:44

同学你好,可以将border.css代码粘贴上来,老师帮助测试下。

  • 提问者 lcyjerry #1
    在上面的恢复中
    2020-05-21 18:57:50
好帮手慕星星 2020-05-21 14:07:00

同学可以在控制台检查下border-bottom的伪类是否添加上了

http://img1.sycdn.imooc.com//climg/5ec619a3095c616c12030375.jpg

如果没有添加上就不会有底边框显示。伪类的样式在border.css中,看看是否有设置

http://img1.sycdn.imooc.com//climg/5ec61a8209f7e7be04510165.jpg

祝学习愉快!

  • 提问者 lcyjerry #1
    添加上了!
    2020-05-21 14:48:10
  • 好帮手慕星星 回复 提问者 lcyjerry #2
    老师不太明白同学的意思。是底边框添加上了没有效果,还是底边框现在有效果了呢?
    2020-05-21 16:20:45
  • 提问者 lcyjerry #3
    我添加上了这个class 控制台也看到了增加了伪元素,但是却不显示边框
    2020-05-21 16:46:43
好帮手慕星星 2020-05-21 11:52:45

同学你好,border-bottom类中设置了相对定位

http://img1.sycdn.imooc.com//climg/5ec5f9f2090846c203880137.jpg

是为了让伪类相对于父元素定位,并且定位在底部

http://img1.sycdn.imooc.com//climg/5ec5f9e609194f7c17730503.jpg

如果不添加border-bottom类,伪类就会相对于页面进行定位,显示在最底部:

http://img1.sycdn.imooc.com//climg/5ec5fabc0958662615410664.jpg

简单理解就是想要子元素相对于父元素定位,显示在父元素底部。

自己可以测试理解下,祝学习愉快!

  • 提问者 lcyjerry #1
    我是添加了没底部边框
    2020-05-21 11:58:39
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师