小编JoJ*_*oJo的帖子

使用CSS切换块元素的顺序

短篇故事

假设我的HTML已经完成了:

<div id="blockA">Block A</div>
<div id="blockB">Block B</div>
<div id="blockC">Block C</div>
Run Code Online (Sandbox Code Playgroud)

它看起来像这样:

------------
| Block A  |
------------
| Block B  |
------------
| Block C  |
------------
Run Code Online (Sandbox Code Playgroud)

现在我想切换块的顺序.我怎么能只用CSS做到这一点?

------------
| Block C  |
------------
| Block A  |
------------
| Block B  |
------------
Run Code Online (Sandbox Code Playgroud)

我知道有一些hacky解决方案,比如使用position:absolute,但这并不能保持对该display:block属性的有效使用.也就是说,当块体尺寸增大时,块会向下推动其他块.

很长的故事

当用户使用计算机查看我的网页时,这些块按以下顺序显示:

  1. 基本信息.
  2. 活动安排.
  3. iPhone应用广告

iPhone应用程序广告是最后放置的,因为它对计算机用户来说并不是非常重要.一小部分计算机用户将拨打电话并安装应用程序.

如果移动用户访问此站点,则iPhone应用程序广告应该是页面上最重要的事情.因此,它应该移到顶部:

  1. iPhone应用广告
  2. 基本信息.
  3. 活动安排.

我希望iPhone和计算机用户共享相同的HTML,但有一个CSS媒体查询切换块的顺序.

@media only screen and (max-device-width: 480px) {
   #blockC {
      /* magic order switching */
   }
}
Run Code Online (Sandbox Code Playgroud)

html css

116
推荐指数
5
解决办法
13万
查看次数

在iOS应用程序中存储全局常量的位置?

我的iOS应用程序中的大多数模型都在查询Web服务器.我想有一个配置文件存储服务器的基本URL.它看起来像这样:

// production
// static NSString* const baseUrl = "http://website.com/"

// testing
static NSString* const baseUrl = "http://192.168.0.123/"
Run Code Online (Sandbox Code Playgroud)

通过注释掉一行或另一行,我可以立即更改模型指向的服务器.我的问题是,在iOS中存储全局常量的最佳实践是什么?在Android编程中,我们有这个内置的字符串资源文件.在任何Activity(相当于UIViewController)中,我们可以使用以下命令检索这些字符串常量:

String string = this.getString(R.string.someConstant);
Run Code Online (Sandbox Code Playgroud)

我想知道iOS SDK是否有类似的存储常量的地方.如果没有,Objective-C中的最佳做法是什么?

cocoa-touch global constants objective-c ios

110
推荐指数
4
解决办法
9万
查看次数

阻止WebView显示"网页不可用"

我有一个广泛使用WebView的应用程序.当此应用程序的用户没有Internet连接时,会出现"网页不可用"和其他各种文本的页面.有没有办法在我的WebView中不显示这个通用文本?我想提供自己的错误处理.

private final Activity activity = this;

private class MyWebViewClient extends WebViewClient
 public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
  // I need to do something like this:
  activity.webView.wipeOutThePage();
  activity.myCustomErrorHandling();
  Toast.makeText(activity, description, Toast.LENGTH_LONG).show();
 }
}
Run Code Online (Sandbox Code Playgroud)

我发现WebView-> clearView实际上并没有清除视图.

java android

84
推荐指数
5
解决办法
10万
查看次数

在子域之间使用localStorage

我正在用支持它的浏览器(除了IE之外的任何人)用localStorage替换cookie .问题是site.comwww.site.com存储自己独立的localStorage对象.我相信www被认为是一个子域名(如果你问我,这是一个愚蠢的决定).如果用户最初在site.com上并决定输入www.site.com在下次访问时,她的所有个人数据都将无法访问.如何让所有"子域"与主域共享相同的localStorage?

javascript subdomain local-storage

78
推荐指数
5
解决办法
8万
查看次数

如何在不缩放背景的情况下增加Android按钮的命中区域?

我有一个带有自定义绘图的按钮.

<Button
    android:layout_width="22dip"
    android:layout_height="23dip"
    android:background="@drawable/triangle" />
Run Code Online (Sandbox Code Playgroud)

drawable是一个透明背景的三角形.

|\
| \
|__\
Run Code Online (Sandbox Code Playgroud)

我觉得这个按钮难以点击.首先,它相对较小.其次,透明像素是不可点亮的.我想保持drawable相同的大小,但使命中区域的形状是三角形大小的两倍.

_____________
|            |
|    |\      |
|    | \     |
|    |__\    |
|____________|
Run Code Online (Sandbox Code Playgroud)

android

74
推荐指数
8
解决办法
5万
查看次数

Firefox 4 onBeforeUnload自定义消息

在Firefox 3中,我能够编写一个自定义确认弹出窗口:

window.onbeforeunload = function() {
   if (someCondition) {
      return 'Your stream will be turned off';
   }
}
Run Code Online (Sandbox Code Playgroud)

现在在Firefox 4中,它不会显示我的自定义消息.它提供的默认消息甚至不能准确应用我的应用程序.

firefox 4确认

可以覆盖此默认消息吗?

javascript firefox firefox4

69
推荐指数
2
解决办法
5万
查看次数

JS正则表达式逐行分割

你如何将一段长文本分成不同的行?为什么这会两次返回line1

/^(.*?)$/mg.exec('line1\r\nline2\r\n');
Run Code Online (Sandbox Code Playgroud)

["line1","line1"]

我打开了多行修改器来匹配^$匹配行的开头和结尾.我还打开了全局修改器以捕获所有行.

我希望使用正则表达式分割,而不是String.split因为我将处理Linux \n和Windows \r\n行结尾.

javascript regex newline

67
推荐指数
6
解决办法
8万
查看次数

如何使用CSS来居中多个内联块元素?

我想在容器块元素内水平居中两个(或可能更多)内联块元素.它应该如下所示:

--------------------------
|      _____   _____      |
|     |     | |     |     |
|     | foo | | bar |     |
|     |_____| |_____|     |
|_________________________|
Run Code Online (Sandbox Code Playgroud)

但是,由于我的代码损坏,它目前看起来像这样:

--------------------------
| _____   ____            |
||     | |     |          |
|| foo | | bar |          |
||_____| |_____|          |
|_________________________|
Run Code Online (Sandbox Code Playgroud)

HTML

<div>
 <a>foo</a>
 <a>bar</a>
</div>
Run Code Online (Sandbox Code Playgroud)

CSS

div a {
 display: inline-block;
 padding: 1em;
 margin: 1em;
 border: 1px solid black;
}
Run Code Online (Sandbox Code Playgroud)

两个锚点必须是内联块而不仅仅是内联的原因是因为我不希望锚点的填充和边距重叠.

css

52
推荐指数
3
解决办法
6万
查看次数

如何将数学运算应用于Android维度?

我如何避免这种硬编码数学...

<resources>
 <dimen name="uno">10dip</dimen>
 <dimen name="dos">6dip</dimen>
 <dimen name="uno_plus_dos">16dip</dimen>
</resources>

<Button 
 android:layout_marginTop="@dimen/uno_plus_dos" />
Run Code Online (Sandbox Code Playgroud)

......把它转变成这样的东西?

<Button
 android:layout_marginTop="@dimin/uno + @dimen/dos" />
Run Code Online (Sandbox Code Playgroud)

xml android android-layout

47
推荐指数
3
解决办法
1万
查看次数

从Unix时间戳创建NSDate

如何从Unix时间戳创建NSDate?

channel.startDate = [NSDate dateWithTimeIntervalSince1970:
(NSTimeInterval)[channelJson objectForKey:@"broadcastStartedTime"]];
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

104:错误:指向预期浮点值的指针值

channels.startDate是一个NSDate*.键"broadcastStartedTime"的值是Number转换为NSNumberNSDecimalNumber通过SBJson解析器库的Javascript .

objective-c

43
推荐指数
2
解决办法
3万
查看次数