老师,请帮忙看看我的代码有什么问题

老师,请帮忙看看我的代码有什么问题

老师,以下是我仿照视频里的案例写的代码,不能实现预期效果。

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">	
	<title>CSS布局</title>
	<style type="text/css">
/*此处写代码*/
		* {
		    padding: 0;
		    margin: 0;
		}
		h1 {
		    text-align: center;
		}
		.a {
		    float: left;
		    width: 50%;
		    padding: 10px;
		}
		.a img {
		    width: 426px;
		    height: 240px;
		}
	</style>
</head>
<body>
	<!-- 此处写代码 -->
	<h1>ENJOY THE LIFE</h1>
	<div class="a">
	    <img src="http://img1.sycdn.imooc.com/climg//58f829090001a4b504260240.jpg">
	    <div class="text">Life is like a book, just read more and more refined, more write more carefully. When read, mind open, all things have been indifferent to heart. Life is the precipitation.</div>
	</div>
	<div class="a">
	    <img src="http://img1.sycdn.imooc.com/climg//58f8290f0001558804260240.jpg">
	    <div class="text">Life is like a cup of tea, let people lead a person to endless aftertastes. You again good taste, it will always have a different taste, different people will have different taste more.</div>
	</div>
</body>
</html>

以下是案例里的代码,div class为m-com,有5条css。http://img1.sycdn.imooc.com//climg/5ebd607a09ee640313570834.jpg

其实我也知道几种实现预期效果的方法,但是不明白为什么我仿照案例不能实现相应的效果。我的代码与案例里的代码有什么不同?是哪里出错了呢?如果想用案例里的那种实现方式应该怎样改?还请老师帮帮我,谢谢!

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

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

3回答
guly 2020-05-19 10:23:04

你好,同学说的是否是在贴出的代码的基础上修改width和padding,

把值该小后效果为:

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

如果解决您的问题请采纳,祝学习愉快!

  • 提问者 精慕门253643 #1
    谢谢回答!但是,我之前说的“试过把width的值、padding的值都改小,但是也不能实现案例那样的效果”,意思是说,把值都改小之后,就不能实现两个div水平居中了,你没有回答这个问题呀,而且你的截图中两个div似乎也没有居中…… 不过多亏了你,现在我明白我的代码有什么问题了。第一是两个div会换行,这是width、padding的值太大,超过了浏览器的宽度导致的,第二是两个div不能水平居中显示,这一点在两个div外面加一个div,然后让div里的元素水平居中就能解决。因为案例嵌套了很多层div,所以定义水平居中的那个div被我给忽略了! 相关的知识我都知道,但是遇到了问题就是想不出到底是哪儿出了错。果然还是代码写得少了吧!而且不能只是寻找自己的代码和案例有什么差别,应该想想怎样实现案例那样的效果。
    2020-05-20 22:02:11
  • guly 回复 提问者 精慕门253643 #2
    同学思考是正确的,因为效果实现的方式不是唯一的,应多加练习,加油~~~
    2020-05-21 09:51:31
好帮手慕小尤 2020-05-15 18:56:01

同学你好,刚是老师没有理解清楚,给您的学习带来不便,深感抱歉。

2. 案例中是通过浮动实现的,同学使用浮动未实现是因设置的内边距,超过了浏览器的宽度,导致没有在一行内显示,建议同学去除内边距,即可实现。修改后代码如下所示:

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

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 提问者 精慕门253643 #1
    谢谢老师的回复!我之前没有看到老师的第二次回答,所以没有及时回复老师,对不起啊。 我在做练习的时候也尝试过去除padding,确实能使两个div显示到一行,可是练习要求两个div之间要有空隙,而视频里的案例就是用的padding添加空隙啊! 我试过把width的值、padding的值都改小,但是也不能实现案例那样的效果,请问这是为什么?
    2020-05-18 23:46:26
guly 2020-05-15 11:12:37

你好,修改您的代码效果如下:

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

代码如下:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>CSS布局</title>
    <style type="text/css">
        /*此处写代码*/
        * {
            padding: 0;
            margin: 0;
        }
        h1 {
            text-align: center;
        }
        .test{
            width:100%;
            text-align: center;
            background-color:red;
        }
        .a1 {
            width: 460px;
            float:left;
            position: relative;
            margin-left: 10%;
        }
        .a2 {
            width: 460px;
            float:left;
            position: relative;
        }
        .text{
            width:460px ;
            /*padding-top:20px;*/
            font-size: 20px;
            font-weight: bold;
            color:#7D7C7F;
            padding-bottom: 50px;
        }
    </style>
</head>
<body>
<!-- 此处写代码 -->
<h1>ENJOY THE LIFE</h1>

<div class="test">
 <div class="a1">
    <img src="http://img1.sycdn.imooc.com/climg//58f829090001a4b504260240.jpg">
    <div class="text">Life is like a book, just read more and more refined, more write more carefully.
When read, mind open, all things have been indifferent to heart. Life is the precipitation.</div>
 </div>
<div class="a2">
    <img src="http://img1.sycdn.imooc.com/climg//58f8290f0001558804260240.jpg">
    <div class="text">Life is like a cup of tea, let people lead a person to endless aftertastes. You again good taste, it will always have a different taste, different people will have different taste more.</div>
</div>
</div>
</body>
</html>

如果解决您的问题请采纳,祝学习愉快!

  • 提问者 精慕门253643 #1
    老师,您是通过添加“margin-left: 10%;”来让两个div看起来是水平居中的,但是案例不是用这种方法实现的呀!人家根本就没有使用margin这个属性……我是想问,案例是怎样实现那样的效果的!
    2020-05-15 13:40:42
  • 提问者 精慕门253643 #2
    老师,我说的是视频里的案例啊……
    2020-05-15 14:18:42
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
PHP小白零基础入门
  • 参与学习           人
  • 提交作业       626    份
  • 解答问题       4930    个

想要学好Web后端开发的中流砥柱语言,本阶段为你轻松铺就扎实的基础,从前端网页布局的搭建到后台PHP开发,助你从零基础到掌握主流开发语言。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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