请求老师帮忙看一下,关于less和定位的问题?

请求老师帮忙看一下,关于less和定位的问题?

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

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

图一是目标样式,图2是我自己写的;遇到的问题是,单个课程的div没有办法直接复用,当你写好单个课程,比如那个前端小白入门的完整样式,然后在复制8份,发现其实是没有效果的;这个原因主要有:外层包裹的div用了相对定位,内部详情用绝对定位之后第一ok;在之后因为你的包裹div名字没有改变、所以最后相对的位置还是第一个设置的;那么解决方式就很简单了;给每一个包裹的相对定位的div重新命名,比如:course-wrap-2;然后再用;这是会发现如果直接复用样式1;还没有变化;因为left没有变,此时,又需要改变left为一个课程的宽度;这样才能出现课程2;也就是如图2的样子;如果采用这种设置,真的是机器麻烦;

我猜,这里可能是less复用的一个绝妙的例子;

如果不是,那么采用普通方法该怎么设置这一系列course的样式???

我仔细看了视频,视频中的那个用到定位的就一个,中间那个推荐课程;这个8个课程全部都要复用;或者还是我的思路有问题~~

请求老师指正?????








正在回答

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

3回答

给包含着8个课程块的大盒子,也就是整个course设置相对定位就行,然后margin-top为负值,例如:margin-top:-100px;

这样整体就都上移了

  • 夜幕客船 提问者 #1
    非常感谢!
    2017-12-19 12:29:35
提问者 夜幕客船 2017-12-19 10:31:30

我自己重新补充一下吧,昨天有点混乱;这个应该是整个course绝对定位上移三分之一;这样就不用单独调整每个courseitem了;但刚才测试,出现了一个神奇的问题,就是我发现单独设置course-item的浮动和宽度失去效果

怎么都被占用了呢 2017-12-19 10:30:38

看了你这么多文字的描述:你是想实现8个课程一行4个排列是吗。这个使用浮动就可以简单的实现了。8个课程块设置同方向的浮动,它们之间间距可使用margin或padding控制。

  • 提问者 夜幕客船 #1
    是一行4个排列,但是整体需要上移100个像素;那就需要用到了绝对定位;但是绝对定位后,宽度和浮动变的不起作用了
    2017-12-19 10:33:25
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
响应式开发与常用框架 2018
  • 参与学习           人
  • 提交作业       2198    份
  • 解答问题       5012    个

如果你有web端基础,既想进阶,又想进军移动端开发,那就来吧,我们专题为你带来的课程有HTML5、CSS3、移动基础、响应式、bootstrap、less等,让你在前端道路上畅通无阻!

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

在线咨询

领取优惠

免费试听

领取大纲

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