2012-05-18 48 views
0

WordPress的部件 - 我把他们安置在小部件,现在该网站的mobile version很烂 - 广告是太大了手机和破坏的主题。我想出现在是这样的:隐藏我无法用广告在移动设备

.mobile #widget{ display: none; }

但事实是,在#widget不工作,我不知道如何是否有可能摆脱这样的小部件。如果我错了,请纠正我。

+0

显示更多的代码,请或URL – allaire

回答

2

你写什么并不真正多大意义,因为你”重新写你的CSS,就好像这种情况存在:

<div class="mobile"> 
    <div id="widget">your ad</div> 
</div> 

这显然不存在。

你可以在这里看到来自位于您网站上的CSS文件@media查询主题目标的移动设备如何:

http://nix-pix.co.uk/wp-content/themes/alyeska/assets/css/responsive.css

所以,实际上很简单 - 你想要的任何自定义样式目标移动将简单地被放置在@media查询里面是这样的:

@media(max-width:480px){ 
    /* All styles for mobile devices go here. */ 
} 

什么,基本上说,在纯英文是:“如果设备的视口是480像素或更低,包括这个CSS” - 这是迅速成为一最现代化和流行的移动设备定位方式,因为现在有这么多。许多人认为这有点倒退思维来尝试利用javascript或PHP用户代理专门针对iPhone或Android手机等,这些方法肯定有他们的目的,但没有真正的东西是这个简单的,在我看来。相反,我们使用CSS @media查询来定位不同的设备宽度。

好了,现在你要隐藏,你必须对内容底部的广告区域。在与像萤火虫或谷歌Chrome浏览器的Web开发工具的工具检查它,我们可以快速地看到它的包裹在一个被称为“主底”类 -

In this screenshot, I'm using Firebug, an extension for Firefox.

因为我们知道在CSS中,当你指的是我们用了一段前缀它,并隐藏我们可以使用display属性的元素的类,我们只希望现在把我们的@media查询此。

@media(max-width:480px){ 
    .main-bottom { 
     display:none; 
    } 
} 
+0

非常感谢!此外,有没有什么方法可以真正摆脱移动版本的侧边栏,因为我有非常大的摩天大楼广告,它们占据了网站上的很多空间!谢谢! – Nick

+0

看看你是否可以用我上面添加的解释弄清楚。 – Jason

2

没有看到任何代码或URL,这是不可能告诉你应该用什么CSS。但是,我的建议是根本不使用CSS,并且如果用户在移动设备上,则不要将侧边栏写入页面。

我不知道你正在使用来检测移动设备是什么,但是这是我在过去的习惯。不理想,但它在一个紧要关头完成了工作。

在functions.php文件,添加:

function mobile_detected($agents) 
{ 
    $userAgent = strtolower($_SERVER['HTTP_USER_AGENT']); 
    foreach($agents as $agent) 
    { 
     if(strpos($userAgent,strtolower($agent)) !== false) 
      return true; 
    } 
    return false; 
} 

而在你的主题,你要调用你的侧边栏:

<?php 
$devices = array(
"iphone", "ipod", "ipad", 
"android", "windows ce", "windows phone os", 
"blackberry", "palm", "symbian", "series60" 
); 
if(!mobile_detected($devices)) 
    dynamic_sidebar('Your Sidebar'); 
?> 
+0

我该怎么放,而不是“你的侧边栏”? – Nick

+0

无论你的侧边栏名称是什么。我不知道那会是什么,因为我不知道你或主题开发者如何注册你的边栏。 – maiorano84

+0

这里的想法是,你会把这段代码放在你的主题中。此代码的第二部分将放置在您的侧边栏通话发生的任何地方。沿着“dynamic_sidebar('Right Sidebar')”寻找一些东西。这就是加载你的侧边栏。 – maiorano84