创建Drupal主题。如何防止我的div包装到内容大小?

时间:2014-11-11 13:45:16

标签: html css drupal drupal-themes

我正在研究我的第一个Drupal主题,到目前为止我只遇到了一个问题。我为所有div设置了百分比大小,以使网站更具响应性。然而,他们似乎忽略了大小,只是包装他们的孩子内容。我该如何解决这个问题?

CSS

#wrapper {
  padding: 5%;
  width: auto;
  height: auto;  
  position: relative;
}
div {
margin: 0px;
padding: 5px;
}
#sidebar-first {
  float: left;
  display: inline;
  width: 19%;
  height: 79%;
  background-color: orange;
}
#header {
  float: right;
  display: inline;
  width: 79%;
  height: 19%;
  background-color: purple;
  text-align: right;
}
#sidebar-second {
  float: right;
  display: inline;
  width: 19%;
  height: 79%;
  background-color: red;

}
#content {
  float: left;
  display: inline;
  background-color: green; 

}
#footer {
  float: left;
  display: inline;
  width: 79%;
  height: 19%;
  background-color: pink;
}

PHP

<div id="wrapper">

    <?php if ($page['sidebar_first']): ?>    
    <div id="sidebar-first">
      <?php print render($page['sidebar_first']); ?>
    </div>
  <?php endif; ?> 

  <div id="header">
    <a href="<?php print $front_page;?>">
      <h1><?php print $site_name; ?></h1>
    </a>

    <?php if ($main_menu): ?>
      <?php print theme('links', $main_menu); ?>
    <?php endif; ?>

  </div>

  <?php if ($page['sidebar_second']): ?>    
    <div id="sidebar-second">
      <?php print render($page['sidebar_second']); ?>
    </div>
  <?php endif; ?>  

  <div id="content">
    <?php print render($title_prefix); ?>
      <?php if ($title): ?><h1><?php print $title; ?></h1><?php endif; ?>
    <?php print render($title_suffix); ?>

    <?php print render($messages); ?>
    <?php if ($tabs): ?><div class="tabs"><?php print render($tabs); ?></div><?php endif; ?>
    <?php if ($action_links): ?><ul class="action-links"><?php print render($action_links); ?></ul><?php endif; ?>

    <?php print render($page['content']); ?>
  </div>

  <div id="footer">
    <?php if ($page['footer']): ?>    
      <?php print render($page['footer']); ?>
    <?php endif; ?>  
  </div>

</div>

以下是现在的样子:  Here is what it looks like now: 希望它看起来与此类似,但他们在静态页面上使用表格。 Want it to look similar to this but they used tables on a static page.

2 个答案:

答案 0 :(得分:0)

你可以试试盒子大小。

html {
  box-sizing: border-box;
}
*, *:before, *:after {
  box-sizing: inherit;
}

其次是CSS

答案 1 :(得分:0)

我明白了。由于我在body和html中有一个包装器,我必须将它们中的所有3个设置为100%才能达到预期的效果。以及Billy_Bob建议的使用盒子大小。

html {
  box-sizing: border-box;
}
*, *:before, *:after {
  box-sizing: inherit;
}
html, body {
  width: 100%;
  height: 100%;
}
#wrapper {
  padding: 4%;
  width: 100%;
  height: 100%;
  min-height: 500px;
  min-width: 850px;
}