小编Trầ*_* Dự的帖子

内联块适用于哪个元素?

我正在研究inline-block属性并且知道它有助于同一行上的元素(而不是正常的每一行).但我不知道是怎么inline-block运作的.

请问inline-block元素X的意志使X相同的线与前一个元素或将与十一个元素同一行

例如下面的代码:

div {
    background: #eee;
    color: black;
    margin: 10px;
}

.one {
    display: inline-block;
}
Run Code Online (Sandbox Code Playgroud)
<div class="one">One</div>
<div class="two">Two</div>
<div class="one">Three</div>
<div class="one">Four</div>
Run Code Online (Sandbox Code Playgroud)

我运行并看到结果是:一个在一行(但是换行),两个在新行(没有换行),三个和四个在同一行(但不同的两个).我无法解释.请告诉我他们为什么这样做.

html css

1
推荐指数
1
解决办法
114
查看次数

实现Android深层链接的最低API

我按照Android官方教程实现了android深层链接.以下是本教程的要求:

Android Studio version 1.0+
The sample code
The Google app version 2.8+
A test device with Android 4.1+
A USB micro to USB cable.
Run Code Online (Sandbox Code Playgroud)

基于此,我可以理解深度链接的最小API是Android 4.1(API> = 17).但是在我关注之后,我真的看不到任何使用API​​> = 17的函数.你只需在manifest.xml文件中注册并处理活动,就完成了.

所以我的问题是:我可以在较旧的Android上实现Android Deep链接,例如android 2.3.3.

谢谢 :)

android deep-linking

1
推荐指数
1
解决办法
1078
查看次数

Java如何实现锁定

我经常使用多线程处理等问题一些Java机制AtomicInteger,synchronized...

我的问题是:Java如何实现这些锁机制?我的意思是:在实现时,Java也会遇到多线程问题,他们如何处理.所有操作系统都有锁机制,Java只是简单地调用它们的API.

java multithreading operating-system locking

1
推荐指数
1
解决办法
409
查看次数

Rails:PG::ConnectionBad(连接已关闭)

我在 Rails 中使用本机查询(因为我的查询很复杂,我认为它不能在 中表达ActiveRecord)。所以这是我尝试的方法:

get  do
  connection = ActiveRecord::Base.connection.raw_connection
  connection.prepare('order_statistic', @@sql)
  data = connection.exec_prepared('order_statistic', [params[:id]])
  connection.close()
  data
end
Run Code Online (Sandbox Code Playgroud)

此代码第一次成功运行。但是第二次,它会抛出异常。(我正在使用 PostgresSQL)

PG::ConnectionBad(连接已关闭)

如果我删除 line connection.close。我会遇到另一个例外:

PG::DuplicatePstatement(错误:准备好的语句“order_statistic”已经存在

请帮助我如何正确使用原始查询。

谢谢

ruby database postgresql ruby-on-rails

1
推荐指数
1
解决办法
2677
查看次数

理解monad在现实世界中的应用

我正在学习Scala中的函数式编程,我学习了术语monad.简而言之,monad是:

trait M[A] {
  def flatMap[B](f: A => M[B]): M[B]
}

def unit[A](x: A): M[A]
Run Code Online (Sandbox Code Playgroud)

我知道monad只是一个基于上述2条规则的概念.我们能满足在现实世界中很多单子,例如List,Future....

我不知道的唯一一个问题是:为什么我们应该知道术语"monad"与理解List apis,Future apis或者任何apis ...比较理解monad帮助我们编写更好的代码或者可以设计更好的功能代码结构.

谢谢

monads functional-programming scala

1
推荐指数
1
解决办法
277
查看次数

CSS:绝对元素内的绝对元素

我正在学习 CSS 并且在我学习时,当相对元素 B 中的绝对元素 A 时,A 将相对于 B。我想测试绝对元素中的绝对元素,但我没有看到任何差异。

这是我的测试:

<div id="box-1">
    <div id="box-2"></div>
</div>
Run Code Online (Sandbox Code Playgroud)

绝对内相对

#box-1 {
    width: 200px;
    height: 200px;
    background: #000000;
    position: relative;
}

#box-2 {
    width: 100px;
    height: 100px;
    left: 50px;
    top: 50px;
    background: #e2e2e2;
    position: absolute;
}
Run Code Online (Sandbox Code Playgroud)

绝对里面绝对

#box-1 {
    width: 200px;
    height: 200px;
    background: #000000;
    position: absolute;
}

#box-2 {
    width: 100px;
    height: 100px;
    left: 50px;
    top: 50px;
    background: #e2e2e2;
    position: absolute;
}
Run Code Online (Sandbox Code Playgroud)

所以。我的问题是:当一个绝对元素在其他绝对元素内时,有什么区别吗?如果不是,为什么我读过的每个例子总是只提到其他相对元素中的绝对元素?

谢谢 :)

html css

0
推荐指数
1
解决办法
4241
查看次数

Git:取消提交的命令

当我工作时,我经常遇到这个工作流程:

  1. 做点什么
  2. 有人来到我的办公桌前询问一些事情,我必须搬到另一个分店进行检查.
  3. 我在当前分支上提交代码并签出另一个分支.
  4. 当我完成时,我会检查旧分支并继续工作.

此工作流程有一个缺点:它在我的系统中生成虚拟提交.我的问题是:我怎样才能避免这种情况?例如,当我回来工作时,我将取消之前的提交?

git

0
推荐指数
1
解决办法
89
查看次数

Ruby:如何找到模块的所有类方法

例如,我有这个代码:

module ExampleModule
  def self.module_method
  end

  def normal_method
  end
end
Run Code Online (Sandbox Code Playgroud)

如果我试着打电话 ExampleModule.instance_methods,我只能看到normal_method.我也搜索过,singleton_class但看起来Ruby没有把类方法放在里面singleton class:

ExampleModule.singleton_class.each do |method|
  print method
end
Run Code Online (Sandbox Code Playgroud)

怎么看self.module_method(只有这个方法,而不是模块ExampleModule的其他父方法).

谢谢

ruby metaprogramming

0
推荐指数
1
解决办法
67
查看次数

SQL:使用索引优化对大表的查询

例如,我有下表:

table Product
------------
id
category_id 
processed
product_name
Run Code Online (Sandbox Code Playgroud)

该表在列id category_idprocessed和和上有索引(category_id, proccessed)。该表的统计数据为:

select count(*) from Product; -- 50M records
select count(*) from Product where category_id=10; -- 1M records
select count(*) from Product where processed=1; -- 30M records
Run Code Online (Sandbox Code Playgroud)

我要查询的最简单查询是:(必须选择 *)。

select * from Product 
where category_id=10 and processed=1 
order by id ASC LIMIT 100  
Run Code Online (Sandbox Code Playgroud)

上面的无限制查询只有大约 10,000 条记录。

我想多次调用上述查询。每次我出去时,我都会将字段更新processed为 0。(因此它不会出现在下一个查询中)。当我对真实数据进行测试时,有时优化器会尝试将其id用作密钥,因此会花费大量时间。

如何优化上述查询(一般而言)

P/S:为了避免混淆,我知道最好的索引应该是(类别、已处理、ID)。但我无法更改索引。我的问题仅与优化查询有关。

谢谢

mysql sql mariadb

0
推荐指数
1
解决办法
67
查看次数

创建频道时的新vs制作

在Go中,我阅读文档并理解make和之间的基本差异new

  • new:返回一个指针(*T)和它指向的零值
  • make:返回类型T.

我阅读文档,主要是使用数组的示例.我在创建数组时理解newvs.make但是在创建频道时我不明白差异:

c1 := new(chan string)
c2 := make(chan string)
Run Code Online (Sandbox Code Playgroud)

除了c1具有类型(chan*)和c2具有类型chan之外,真正的差异是什么.

谢谢

channel go

-1
推荐指数
1
解决办法
59
查看次数