【问题标题】:Logo placement overlapping // Joomla Bootstrap徽标放置重叠// Joomla Bootstrap
【发布时间】:2015-04-22 16:01:40
【问题描述】:

在我的Joomla 3.x Bootstrap site 上,我想在导航栏和幻灯片上放置一个徽标,如下所示:

screenshot

导航栏是“固定顶部”,幻灯片放置在任何其他容器之外,以便以全宽显示。 更复杂的是,徽标应该在滚动时固定在顶部,就像导航栏一样。 但在移动设备上,它应该向上移动(再次,就像导航栏),甚至被另一个(更小的)图像所取代。

如何做到这一点?

标志链接到主页,现在是通过将 href 和标志图像本身放在 index.php 中来完成的。

要根据视口轻松更改图像,我必须在 css 中进行。但是如何链接到主页呢?

请帮助我正确放置徽标图像(响应式)。

.logo-wrapper {
	position: relative;
	z-index:1;
}	
	
.toplogo {
   position:absolute;
   width:auto;
   height:auto;
   z-index:10;
   left: 0px;
   top: 0px;
}
<body id="<?php echo ($itemid ? 'itemid-' . $itemid : ''); ?>">

			    <div id="toplogo">
				<a href="<?php echo $root = JURI::root();?>" onfocus="blur()">
				<img src="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/images/logo-test.png" title="Zur Startseite" alt="<?php echo $root = JURI::root();?>" border="0"/>
				</a>
				</div>  
  
    <!-- Begin Navbar-->
    <?php if ($this->countModules('position-9')): ?>
      <div class="navbar navbar-inverse navbar-fixed-top">
      <!-- navbar-inverse navbar-fixed-top -->
        <div class="navbar-inner">
          <div class="container">
            <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
              <span class="icon-bar"></span>
            </a>          
            <!--<a class="brand" href="#"><?php echo $sitename ?></a>-->
            <div class="nav-collapse collapse">
              <jdoc:include type="modules" name="position-9" style="none" />
            </div>
          </div>
        </div>
      </div><!--End navbar-->
      <?php endif; ?>
  
        <?php if ($this->countModules('position-5')): ?>
				<div class="bigimage">
					<jdoc:include type="modules" name="position-5" style="none" />
					<div class="clearfix"></div>
				</div><!--End Bigimage-->        
				<?php endif; ?>

	<div class="container">
    
		<!-- Begin Header-->
		<div class="header">
			<div class="header-inner">​

【问题讨论】:

  • 很遗憾,到目前为止还没有答案。我知道有很多要求,但我试图自己完成这两天,但没有成功。我什至发现了另一个问题(stackoverflow.com/questions/11816819/…),但不幸的是它没有用。我想要实现的也可以在这里看到:skagosoil.gr。与此同时,我已将徽标链接放回导航栏容器...

标签: css twitter-bootstrap joomla containers graphical-logo


【解决方案1】:

考虑这种布局:

<div class="row top-menu-row"> <!-- added .row -->
    <div class="span3"> <!-- added .span3 -->
        <a class="toplogo" href="http://www.lyzarr.com/testsite/" onfocus="blur()" style="z-index: 1; position: absolute;">
            <img style="" src="/testsite/templates/test-template-joomla3-bootstrap_101/images/logo-test.png" title="Zur Startseite" alt="http://www.lyzarr.com/testsite/" border="0">
        </a>
    </div> <!-- end .span3 -->
    <div class="span9 hidden-desktop"> <!-- added .span9 -->
        <a class="btn btn-navbar collapsed" data-toggle="collapse" data-target=".nav-collapse">
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        </a>
    </div> <!-- end .span9 -->
    <div class="span9"> <!-- added .span9 -->
        <div class="nav-collapse collapse" style="z-index: 2; height: 0px;">
            <ul class="nav menu  nav-tabs">
<li class="item-101 current active"><a href="/testsite/"><span>Home</span></a></li><li class="item-102 dropdown deeper parent"><a class=" dropdown-toggle" data-toggle="dropdown" href="#"><span>About<b class="caret"></b></span></a><ul class="nav-child unstyled small dropdown-menu"><li class="item-103"><a href="/testsite/about/info.html"><span>Info</span></a></li></ul></li></ul>
        </div>
    </div> <!-- end .span9 -->
</div>

这里的标志在前,菜单在后。因为您的引导程序版本是 2.3.2,所以如果设备的水平分辨率为 480 像素及以下,它会使所有列的宽度为 100%。无论屏幕分辨率如何,添加以下样式都会以百分比形式固定列的宽度:

.top-menu-row .span3
{
    width: 22% !important;
    float: left; 
    height: auto;     
}

.top-menu-row .span9
{
    width: 74% !important;
    float: right;
}

并在设备的媒体查询中删除 absolute 定位,以使您的徽标适合列宽:

@media (max-width: 767px) {
    a.toplogo {
        position:relative;
    }
}

【讨论】:

  • 首先非常感谢您再次帮助我!由于我病得很重,直到现在我都无法真正研究这个问题。我输入了您提供的代码,起初一切看起来都很好(谢谢!)但是一旦您调整浏览器窗口的大小,徽标就会变得很不稳定。我放了一个 gif 来演示这一点:lyzarr.com/stuff/dancing-logo.gif 我检查了 css,是否有任何可能导致这种情况的原因,但是由于到目前为止我还没有对徽标进行任何媒体查询,所以这不是似乎是这样。
  • 非常感谢,现在可以使用了。最后一点(@media)在我注释掉它时实际上似乎没有任何区别?!现在唯一缺少的是自动将徽标替换为不同且更紧凑的徽标。所以我的意思是一个真正不同的文件,比如“logo_test_sm.png”,它也适合导航栏的高度。仅通过媒体查询缩小徽标会使其难以阅读。大的更像徽章,小的应该只包含徽标本身。
  • 当菜单折叠并显示汉堡菜单时应该替换它。 (只是为了澄清)
  • @Lyzarr 那么您需要使用带有background-image 属性的div 并通过img 标签内a.toplogo 内的媒体查询设置它
  • 想过这个问题,但不确定是否有解决方案可以将整个 div 设置为链接,因为将其放在 中是无效的。但在这里找到了解决方案:digitalskydesign.com/how-to-make-an-entire-div-a-link-using-css。似乎工作。现在只想将菜单项向左对齐(在折叠菜单中)。所以我把 .top-menu-row .span9 { width: 74% !important;浮动:对;进入媒体查询,但随后小徽标 div 再次消失。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-25
  • 1970-01-01
  • 1970-01-01
  • 2018-12-06
  • 2017-11-08
  • 2013-06-03
  • 1970-01-01
相关资源
最近更新 更多