CSS margin-top无效

http://anonoz.com/armesh//contact_form/

上面的链接显示了我正在制作的联系表格.
我试图让它像右边的图片.我必须给出“尝试我们今天”的文字,这是20px的上限.

HTML:

<body>

<div id="form_container">
    <div id="form_body">
        **<span class="form_head">Try us Today</span>**
        <br/>
        <span class="form_subhead">30 day money back gurantee</span>
                <form id="enquiry_form" method="post" action="scripts/contact-form-handler.PHP"> 

                        <input type="text" name="name" id="name" value="Name" />

                        <input type="text" name="contact" id="contact" value="Contact Number" />

                        <input type="text" name="e-mail" id="email" value="Email" />

                       <input id='submit_button' type="submit" value="Get Your Space - NOW" />
                </form>
    </div>    
</div>

<img src="form2.jpg"/>
</body>

CSS:

.form_head {
    margin-top: 20px;
    color:#58585a;
    font-size:22px;   
}

CSS应该将.form_head 20px推向#form_body div.然而什么都没发生我甚至尝试过Firebug和Chrome开发人员工具,但没有弄清楚为什么会这样.我还尝试设置#form_body div的高度以匹配表单的高度,这样就可以将.form_head推下来但仍然无法正常工作.

我已经编码了3个月了,我经常遇到这种类型的问题.我总是通过简单地键入一些定位代码来完成它.

但是,我今天不想做同样的事,但是想要理解为什么会发生这种情况以及如何以正确的方式解决它.有人可以请一些亮点并教育我吗?

解决方法

<跨度>元素具有内联的默认显示属性.内联元素不受边距或填充等因素的影响.

只需给.form_head一个display:block或display:inline-block.

.form_head {
    margin-top: 20px;
    color:#58585a;
    font-size:22px;  
    display:block; /* Add this */ 
}

更多阅读:The difference between “block” and “inline”
What’s the Deal With Display: Inline-Block?

相关文章

前言 最近项目做完,用户需要兼容IE,于是开展了兼容性的调整工作。边调整边想感叹IE真是个沙雕。。特将...
前言 有些属性不是很常用,但是工作中遇到了,记录一下,方便学习。 1、text-indent text-indent 属性规...
前言 政府网站会遇到公祭日的时候,网站整体颜色变灰的情况。今天正好调了一下。在此把解决方案分享给大...
需求 项目里有个消息中心,当有消息的时候,小铃铛图标可以晃两下,提示当前有信息。 实现过程 书写css...
html代码 css代码 效果图
在一些界面上 , 如果每个icon都去找图片还是相当麻烦的 , 直接使用css画出icon就方便的多了 , 下面两个...