小编gre*_*emo的帖子

身高背后的技术原因:100vh(工作)vs min-height:100vh(不工作)身体?

请不要投票关闭。这是关于为什么这不起作用的技术原因。我已经有了一个可行的解决方案,我不是在要求它。

我需要设置.wrapper高度的简单示例,至少是浏览器高度。

以下适用于 IE10-11、Edge、Firefox、Chrome(工作小提琴):

<!doctype html>
<html lang="it">
    <head >
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
        <title>Demo</title>
        <style>
            body {
                margin: 0;
                height: 100vh;
                background-color: red;
            }

            .wrapper {
                min-height: 100%;
                background-color: green;
            }
        </style>
    </head>
    <body>
        <div class="wrapper"></div>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

但是如果我设置bodymin-height而不是height(恕我直言,合理的),它就不再起作用(不工作小提琴)。为什么?它背后的技术原因是什么?

编辑 1

另一个工作小提琴,其中bodyhasmin-height: 100vh.wrapperhas min-height: inherit

另一个工作拨弄只有在.wrapper拥有 …

css

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

.gitignore,排除文件夹中的所有文件......但保留那些带有 .gitkeep 的子文件夹?

我想忽略文件log夹中的所有文件,除了.gitkeep文件(我需要这些文件来保持空目录):

- log
  |- foo.log (should be ignored)
  |- folder1 (should be ignored)
  |- folder2 (keep it because contains a .gitkeep file)
     |- .gitkeep
Run Code Online (Sandbox Code Playgroud)

不工作:

/log/*
!/log/*/.gitkeep
Run Code Online (Sandbox Code Playgroud)

使用**也不起作用:

/log/*
!/log/**/.gitkeep
Run Code Online (Sandbox Code Playgroud)

这可能吗......没有手动排除每个子文件夹,像这样?

/log/folder1/*
/log/folder2/*
!/log/folder2/.gitkeep
Run Code Online (Sandbox Code Playgroud)

git gitignore

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

即使根本不改变数据,Reack hook useState(初始化函数)调用了两次?

此示例中,我只是useState使用初始化函数进行调用:

import React, { useState } from "react";
import "./styles.css";

export default function App() {
  const [data, setData] = useState(() => {
    console.log('Getting initial state...');

    return {};
  });

  return (
    <div className="App">
      <h1>Hello CodeSandbox</h1>
      <h2>Start editing to see some magic happen!</h2>
    </div>
  );
}
Run Code Online (Sandbox Code Playgroud)

从控制台可以看到,useState函数被调用了两次。这是正常现象,有什么原因吗?

reactjs react-hooks use-state

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

使用 env_file 时在 Docker Compose 服务中提供后备吗?

.env.local

FOO=bar
Run Code Online (Sandbox Code Playgroud)

我正在加载.env.local为服务env_fileFOO如果缺失或为空,我仍然想提供一个后备值:

FOO=bar
Run Code Online (Sandbox Code Playgroud)

无论如何,据我所知FOObaz即使应该是,也总是bar

$ docker compose config

name: myproject
services:
  caddy:
    environment:
      FOO: baz
    image: caddy
Run Code Online (Sandbox Code Playgroud)

我知道它environment优先于env_file,但我引用了FOO它自己,所以我打赌它会起作用。我错过了什么吗?

docker

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

嵌套列表,我如何用lambda表达式做到这一点?

无法真正理解select扩展方法如何与另一个列表中的列表一起使用,如下所示:

var queries = (from item in list
               from item2 in list.anotherlist
               select item2).ToList<MyType>();
Run Code Online (Sandbox Code Playgroud)

这不起作用:

// Gives me a list of List<QueryResult>
var queries = list.Select(item => item.anotherlist).ToList(); 
Run Code Online (Sandbox Code Playgroud)

c# linq lambda list

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

Webbrowser.DocumentStream或Webbrowser.DocumentText无法正常工作?

我无法弄清楚为什么这些简单的代码行根本不起作用:

// Bulding tree
var declaration = new XDeclaration("1.0", "UTF-8", "yes");
var root = new XElement("root");

// Adding elements to document
var doc = new XDocument(declaration, root);

// Salve the stream
var stream = new MemoryStream();
doc.Save(stream);

// Update WebBrowser control
webBrowser1.DocumentStream = stream;
Run Code Online (Sandbox Code Playgroud)

c# browser stream linq-to-xml webbrowser-control

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

为什么我得到"例外:Prelude.head:空列表"?

无法弄清楚为什么模式匹配不起作用!我是从Hasklell开始的,所以请耐心等待!

-- matrix implemented as a list of lists (rows of the matrix)
test_matrix3 = [[1,0,0],[2,-3,0],[4,5,6]]

-- transpose of a given matrix
transpose    (x:[]) = [x]
transpose all@(x:_) = map head all : transpose ([tail y | y <- all])
Run Code Online (Sandbox Code Playgroud)

执行:

*Main> transpose test_matrix3
[[1,2,4],[0,-3,5],[0,0,6],[*** Exception: Prelude.head: empty list
Run Code Online (Sandbox Code Playgroud)

haskell list matrix pattern-matching

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

PHP array_walk什么都不做?

我想在select元素中将每个文件名放在$ xsl_dir_path(绝对路径)中.我试过这个:

$files = glob($xsl_dir_path . "/*.xsl");
array_walk($files, 'basename');
Run Code Online (Sandbox Code Playgroud)

但它根本不起作用,我仍然可以看到文件的全名.我知道我可以basename在删除$files并构建选项元素时应用,但我想在任何html输出之前执行此操作.

php arrays glob

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

使用json_encode和PHP处理base64编码图像

我的PHP类返回一个小的base64编码图像,链接这个:

class Service
{

  function getLogo()
  {
    $image = "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c
             QAAAARnQU1BAACxjwv8YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwA";

    return 'data:image/png;base64,' . $image;
  }

}
Run Code Online (Sandbox Code Playgroud)

使用返回图像json_encode\n在每行之后添加$image:

$service = new Service();
$response = array('name' => $service->getName(), 'logo' => $service->getLogo());
header('Content-type: application/json');
echo json_encode($response);
Run Code Online (Sandbox Code Playgroud)

如何正确处理?

php base64 json

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

为什么不能在表达式中组合'continue'关键字?

为什么这不可能完成?

foreach($arr as $k => $v)
{
   if($condition) { $obj->myMethod() && continue; }
}
Run Code Online (Sandbox Code Playgroud)

$obj->myMethod()获得评估之后,continue评估(执行)关键字,导致跳过当前迭代.

编辑:我问这个是因为:

if($error) { $log->fatal('Something weird happened.') && continue; }
Run Code Online (Sandbox Code Playgroud)

是单行和不言自明的.

php loops

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