使用跨度边距来对齐文本

Mic*_*ole 9 html css

对html有点新,所以如果需要进一步解释或者这个问题没有意义,请随意说出来.

我正在使用div来布局我正在设计的webform并使用 来移动div中的文本并不总是产生我想要的结果到页面的布局.

我开始尝试并使用:

<span style="margin-left:(variable)px"></span>
Run Code Online (Sandbox Code Playgroud)

我能够将文本准确地移动到我想要的位置.

我的问题是,这是一种不好的做法吗?有没有更好的方法来做我想做的事情,或更传统的方式?或者甚至是html内置的东西,我还没有发现.

谢谢

*添加了代码块以显示我想要完成的任务

   Complainant's Address
   <input type="text" size="50" id="complainantAddress"/> 
   <span style="margin-left:3px"></span>
   City
   <input type="text" name="city" maxlength="15" size="15"/>
   <span style="margin-left:16px"></span>
   State
   </div>
Run Code Online (Sandbox Code Playgroud)

Sma*_*tti 5

使用不易碎的空间进行布局/定位是不好的做法.您尝试使用style属性做得更好,但内联样式属性通常也被认为是不好的实践.
样式属性很难维护,并且您复制了大量信息等.此外,这种样式具有最高的特异性,不能被其他样式(如用户CSS文件)覆盖.应谨慎使用它们.

使用CSS属性margin,paddingtext-align这一点.

示例
http://jsfiddle.net/UYUA7/

HTML

Text<br />

&nbsp;&nbsp;&nbsp;&nbsp;Text <!-- Do NOT use this -->

<div class="center">Center</div>
<div class="right">Right</div>
<div class="indent">Indented</div>
Run Code Online (Sandbox Code Playgroud)

CSS

.center {
    text-align: center;
}

.right {
    text-align: right;
}

.indent {
    margin-left: 20px;
}
Run Code Online (Sandbox Code Playgroud)

  • 很好的答案,我甚至投票.:)我唯一担心的是你说"内联式属性是不好的做法",实际情况并非如此.对一次性元素使用内联样式是完全可以接受的.并非所有内容都需要使用ID和类标记. (2认同)
  • @DeviantSeev可能有一些案例,其中内联样式是可以接受的.一般来说,这是不好的做法,当你开始_learn CSS_时,你不应该这样学习. - 我非常喜欢严格分离内容/结构和造型. (2认同)
  • 对不起,我不同意你的看法。仅仅因为您更喜欢以某种方式完成某事,并不会使另一种方式成为“不良做法”。我实际上赞成主要使用类进行样式设置,但将内联样式称为不好的做法是一种延伸。没有规则说每个元素都需要通过类或 id 来设置样式。事实上,这样做会使您的样式表不必要地臃肿且难以遵循。只有我的两分钱。 (2认同)
  • @DeviantSeev 我通常使用模板和客户特定的设计(30+)。也许我们可以同意这一点:_“内联样式的属性通常被认为是不好的做法......它们应该谨慎使用。”_ (2认同)
  • 让我们接收有差异的看法。开个玩笑,争论这一点是愚蠢的,因为它只是语义。有经验的开发人员会知道何时使用内联样式以及何时使用类。对我来说,这就是全部。对你来说可能会有所不同,没关系。:) (2认同)