老师,选择项的文字不能居中,怎么办?

老师,选择项的文字不能居中,怎么办?

2、老师,选择项的文字不能居中,怎么办?

2、还有一个不明白,就是选择项的header-box的宽度,为什么不是四个span+边框的距离呢?不知道怎么设定

--------------------

html 文件

————————

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>Document</title>

    <!-- 插入css样式 -->

    <link rel="stylesheet" href="../css/css5.css">

</head>

<body>

    <!-- 选择项 -->

        <div class="header-box" id="header-box">

        <span class="clickcolor" >首页</span>

        <span>点击看看</span>

        <span>会自动的</span>

        <span>我的网站</span>

        </div>

    <!-- banner图 -->

    <div class="banner-box">

        <div class="banner num1"></div>

        <div class="banner num2" ></div>

        <div class="banner num3" ></div>

        <div class="banner num4" ></div>

    </div>

    <!-- 插入script -->

    <script src="../js5/js5.js"></script>

</body>

</html>


-----------

css

--------------

/* 全局样式 */

* {

  margin: 0px;

  padding: 0px;

}


/* 选择项的样式 */

.header-box {

  width: 1145px;

  height: 68px;

  border: 1px rgb(189, 187, 187) solid;

  margin: 0px auto;

  margin-top: 50px;

}


.header-box span {

  width: 280px;

  display: inline-block;

  font-size: 22px;

  margin:0 auto;

  font-family: Microsoft YaHei;

  color: #666;

  line-height: 68px;

  border: 1px #FFF solid;

  

}


.clickcolor {

  background-color: #ffcc00;

  border-radius: 8px 8px;

  color: black;

  font-weight:bold;

}


/* banner图的样式 */

.banner-box {

  width: 1145px;

  height: 500px;

  margin: 0 auto;

  position: relative;

  overflow:hidden;

 

}


.banner{width: 1200px;

    height: 500px;

    display:none;

    background-size: 100%;

    position: absolute;

    left: 0px;

    top: 0px;

    display: none;

}

.num1 { 

  background: url(../img5/1.jpg) no-repeat;

  display:block;

}

.num2 {

  background: url(../img5/3.jpg) no-repeat;

}


.num3 {

  background: url(../img5/4.jpg) no-repeat;

}


.num4 {

  background: url(../img5/5.jpg) no-repeat;

}


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

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

3回答
好帮手慕久久 2020-06-21 17:04:21

同学你好,可通过增大类名“clickcolor”的权重来实现,如下:

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

祝学习愉快!

  • 提问者 慕用6222994 #1
    我想复杂了,我明白了。感谢老师
    2020-06-21 17:08:08
  • 好帮手慕久久 回复 提问者 慕用6222994 #2
    同学你好,这很正常,没事的,加油,祝学习愉快!
    2020-06-21 17:17:44
好帮手慕久久 2020-06-21 15:43:07

同学你好,问题解答如下:

1. margin和line-height分别实现水平和垂直居中。

其中margin:0 auto;可以让块级元素实现居中(水平居中),并且这个块级元素还需设置宽度,它无法让行内块水平居中,如下:

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

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

而line-height是设置文本的行高,通常利用它让文字垂直居中,如下:

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

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

另外文本的水平居中,可以通过给父元素设置text-align:center;实现,如下:

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

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

而行内块也可以通过给父元素设置text-align:center;实现水平居中。

2. 给父元素设置font-size:0px;之所以不会影响span,是因为span标签设置了字体大小,如下:

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

所以span标签的字体大小会以自己的样式为主。

祝学习愉快!

  • 提问者 慕用6222994 #1
    老师,我再问一个问题。就这个文件里面.header-box 和 .clickcolor中的color发生了冲突,按照权重,是没有办法实现.clickcolor的颜色改变。但是如果在后期绑定事件中,比如点击时,需要实现.clickcolor样式,包括颜色。这种情况,这种情况一般用什么方式实现呢?是再绑定一个属性吗?
    2020-06-21 16:02:53
好帮手慕久久 2020-06-21 14:26:50

同学你好,问题解答如下:

1.选项文字居中,可以通过text-align:center;属性实现,如下:

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

2. 由于每一个span都转成了inline-block,而inline-block元素之间会有默认的间隙,如下(测试时,给每一个span都添加了红色背景色):

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

所以一行显示4个span时,所需要的父元素的宽度会大于4个span的宽度和。

可以通过给span的父元素设置font-size为0,去除span彼此之间的间隙,如下:

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

如果我的回答帮到了你,欢迎采纳,祝学习愉快!

  • 提问者 慕用6222994 #1
    老师,在这里为什么不能通过margin和line-height实现居中呢?什么时候用margin和line-height?这里用的font-size,为什么不会影响span里面文字的大小呢?
    2020-06-21 14:42:34
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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