【问题标题】:What is the benefit of not using float:right?不使用浮点数有什么好处:对吗?
【发布时间】:2012-08-06 21:19:53
【问题描述】:

我的网站中有两个 div,一个在左侧,另一个在右侧。 但是客户说不要使用float:right。所以我使用了margin:left 不使用float:right 的优点是什么? margin-leftfloat:right, 还是我错了?请帮帮我。

#left
{
float:left;
width:200px;
}
#right
{
float:right;
width:200px;
}

#left
    {
    float:left;
    width:200px;
    }
    #right
    {
    margin-left:250px;
    width:200px;
    }

【问题讨论】:

  • 有趣。我总是使用右浮动而不是设置间隙的左浮动。很想看看是否有充分的理由,但我很好奇为什么 a) 客户会这么说,b) 你会听他们的话。
  • 任何说“不要使用功能 X”的建议,无论上下文如何,并且功能 X 被认为是有效的,都是错误的。 HTML 和 CSS 中的所有有效功能都有时间和地点。
  • 您的客户告诉您哪些 CSS 属性不要使用?这是第一次!
  • 我想我投票给 float:right :) 当你调整窗口大小时它会帮助你。就像 Zaman 说的那样……我从来没有听过客户告诉我应该使用什么……
  • 使用float:right没有问题。

标签: html css css-float


【解决方案1】:

我想这与标记的顺序有关。原则上,你应该先写所有的标记,所以没有任何 css 是有意义的,然后再添加 css 规则。

如果您需要移动标记以满足 css 条件,您可能会损害搜索引擎优化、可访问性或可读性以及代码的清晰结构。

如果你浮动正确,有时你需要将元素放在标记中的第一个,即使它在视觉上看起来第二。

这当然是猜测,正如 Marcus Aurelius 在他的书中所写的冥想 - 试图理解另一个人(在这种情况下是您的客户)或多或少是在浪费时间,因为您永远无法真正成功,只有傻瓜自己认为你完全理解他们和他们的动机。相反,你应该关注确保自己的动机和行为是正确的——所以要确保你知道什么时候什么时候不让事情左右浮动(你现在正在这样做),并将这些真相揭示给你的客户。

【讨论】:

  • @Rohit:我认为问题不仅仅与计算机和数学有关。我认为这个问题也与人们的行为有关。为什么客户对浮动有强烈的(并且可能过于简化到错误的地步)意见,您如何有效地处理客户的异想天开的意见?这些是哲学家的问题,就像老马库斯一样。
  • 最后一段是我在 SO 上见过的最禅宗的回答,非常喜欢 Alan Watts...:D
  • @PruitIgoe:我会阅读 Alan Watts(在这个项目独角兽网站上:library.holtof.com/unicorn/watts/index.htm),感谢您的提示。也许我会想办法更​​有效地float:up,~)
  • @Billy - 谷歌 Trey Parker 和 Matt Stone(南方公园的创作者)和 Alan Watts - 他们将他的一些录音制作成动画……是我对他的介绍让我购买了他的书- 什么是禅......好东西
【解决方案2】:

实际上,如果您在第二个 div 中使用 float:left;,那么 second div 将在 first div 之后立即开始。

像这样:- http://tinkerbin.com/FfuvHZw4

如果您在第二个 div 中使用 float:right,那么 第二个 div 将从父 div 或主体的右侧开始。

像这样:- http://tinkerbin.com/EgtjAJA1

【讨论】:

  • 我只是解释了 float:left-right; 的变化。从两个角度来看什么是可能的,而且我们也很清楚,如果他已经知道他不应该问这个问题
  • @ShailenderArora :谢谢你的回答,我知道浮动,即使我只是想澄清我的疑问,谢谢
【解决方案3】:

好吧,使用 float:right; 没有错。 也许您的客户对此有想法。可能是开发问题。

【讨论】:

    【解决方案4】:

    我能想到不使用float: right的唯一可能的“加号”是它会导致右浮动的内联元素以相反的顺序出现(除非父元素是浮动的,其中如果它的孩子会以正确的顺序出现)。因此,如果以特定顺序从数据库中提取内容(例如项目列表),则需要反转 ORDER_BY 以使它们以所需顺序出现。与普通 HTML 元素的顺序类似。他们可能不希望您使用float: right,因为他们不想重构其他代码。

    小提琴:http://jsfiddle.net/nxdD4/1/

    这是我唯一能想到的。

    【讨论】:

      【解决方案5】:

      确定您不会因为提问而显得愚蠢,所以我会问您的客户。也许他们的理由还有其他你应该注意的含义,也许 Aurelius 的推理可能会不必要地束缚你的手,万一你的客户也没有从古代哲学的角度思考。

      我能想到的最可能的解释是,如果代码与呈现的顺序相同,则代码更容易更新(尽管我认为在 CSS 中使用正确的语义更重要),你的代码是与其他代码一起出现在页面中,或者您的代码将由 CMS 生成,如果事情按照相同的顺序,其设置/管理会更简单,可能已经脱离上下文或一些善意的论坛受访者引用的相关资料可能少于他们的相关来源。罗马皇帝从来都不擅长这种敏感的感觉。

      【讨论】:

      • 我会选择可怕的“客户在另一个网站上阅读......”或“他的侄子喜欢为他的朋友建立网站并告诉他滑板图片......”答案.
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-24
      • 1970-01-01
      • 2014-10-26
      • 1970-01-01
      • 2010-09-11
      • 2010-10-02
      • 1970-01-01
      相关资源
      最近更新 更多