小编Gam*_*mes的帖子

为什么使用 CSS 变量设置继承的显示属性不起作用?

我将 div 的显示属性设置为in line-block。然后我创建了四个类:

  • no-var,将显示设置为inherit
  • var,它将显示设置为变量inherit
  • var-none,将显示设置为变量none
  • var-default,将显示设置为变量设置为inherit,默认值为grid

不过,每个类使用的实际样式似乎并不正确:

  • no-var 类正确继承了 display 到block
  • var 类不会inherit从变量中获取值并显示为inline-block
  • var-none 类正确设置显示none并隐藏
  • var-default 类不会inherit从变量中获取值并将显示设置为默认值

对于每个类,我添加了颜色属性的变量和默认值,它们都按预期工作。inherit变量和值是否应该被忽略unset

:root {
  --display: inherit;
  --display-none: none;
  --color: red;
}
div  {
  display: inline-block;
  color: green;
}
.no-var {
  display: inherit;
  color: red;
}
.var {
  display: var(--display);
  color: var(--color);
}
.var-none {
  display: var(--display-none);
}
.var-default {
  display: var(--display, grid); …
Run Code Online (Sandbox Code Playgroud)

html css css-variables

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

OpenLayers - 适合当前范围正在缩小

使用 OpenLayers,我想设置 1 个地图的视图,使其与另一个地图相同。到目前为止,我使用了缩放和居中,效果很好,但由于某些投影在技术上不可行,我尝试在一定程度上进行操作。

我正在使用最新的 OpenLayers (4.6.3)。

理论上,以下代码应该获取我当前地图的范围,并将我的地图适合该范围,这样就不会发生任何移动。

let view = map.getView();
let extent = view.calculateExtent(map.getSize());
view.fit(extent, map.getSize());
Run Code Online (Sandbox Code Playgroud)

但实际上,如果我放大得足够大(例如,点击加号按钮 6 次),然后运行上面的代码,它每次运行时都会缩小,这不是我想要的。

我尝试过constraintResolution,但它最大限度地减少了损害,而不是完全消除它。

这是一个可以玩的小提琴:http://jsfiddle.net/t6uvybd3/1/ (我不确定那里的ol版本是什么,但它也确实在那里发生)

视频:https://www.youtube.com/watch? v=ZAV_FuZ-p7M&feature=youtu.be

javascript openlayers openlayers-3

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

链接到旧的openlayers API

ol5是最近发布的,但我仍在使用ol4。他们网站上的所有链接都指向最新文档,但是我需要4.6.5的文档。有人知道它在哪里吗?

openlayers openlayers-3

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

使用 pyyaml 从 yaml 解析环境变量

我有以下 yaml 文件:

config:
  username: admin
  password: ${SERVICE_PASSWORD}
  service: https://${SERVICE_HOST}/service
Run Code Online (Sandbox Code Playgroud)

如何从环境中加载密码和主机值?

yaml environment-variables pyyaml python-3.x

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

使用类型(“TEXT”)的字符串表示形式将值转换为类型(TEXT)

我想创建一个函数,尝试将一组值转换为用户指定的类型(默认为文本)。一个非常简单的函数如下所示:

CREATE OR REPLACE FUNCTION cast_to(variable jsonb, key text, target_type anyelement DEFAULT 'TEXT'::regtype) RETURNS anyelement as $$
begin
    RETURN CAST(variable->>key AS target_type);
end
$$
language plpgsql;
Run Code Online (Sandbox Code Playgroud)

我已经尝试过以下方法:

  1. SELECT CAST('foo' AS 'text');: 给出语法错误
  2. SELECT CAST('foo' AS 'text'::regtype);: 与 1 相同的错误
  3. SELECT CAST('foo' AS pg_typeof(null::text));type pg_typeof does not exist

最后一次尝试是我可以传入一个具有目标类型的变量而不是文本表示形式。使用该函数将如下所示SELECT cast_to('text', NULL::text);

如何实现这个或类似的功能?

编辑:正如评论中所建议的,我尝试使用动态 SQL。我运气不太好。我创建了一个非常基本的案例,不使用任何变量:

CREATE OR REPLACE FUNCTION audit.cast_to() RETURNS text as $$
DECLARE 
_sql TEXT := 'SELECT CAST($1 AS $2)';
out TEXT;
begin …
Run Code Online (Sandbox Code Playgroud)

sql postgresql polymorphism dynamic-sql plpgsql

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

Postgresql 中 JSON/B 运算符的等效函数

我试图深入研究文档,但似乎找不到任何我想要的东西。PostgreSQL 中的各种 JSON/B 运算符(->->>@>?等)是否有等效函数?

编辑:为了澄清,我想知道是否可以让以下分组查询返回相同的结果:

SELECT '{"foo": "bar"}'::json->>'foo';                   -- 'bar'
SELECT json_get_value('{"foo": "bar"}'::json, 'foo');    -- 'bar'

SELECT '{"foo": "bar"}'::jsonb ? 'foo';                  -- t
SELECT jsonb_key_exists('{"foo": "bar"}'::jsonb, 'foo'); -- t
Run Code Online (Sandbox Code Playgroud)

postgresql json

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

获取所有具有当前值的序列

我有以下查询可以获取所有序列及其模式:

SELECT sequence_schema as schema, sequence_name as sequence
FROM information_schema.sequences
WHERE sequence_schema NOT IN ('topology', 'tiger')
ORDER BY 1, 2
Run Code Online (Sandbox Code Playgroud)

我想用类似的东西来获取每个序列名称的当前值select last_value from [sequence];。我尝试了以下(以及一些变体),但它不起作用,因为语法不正确:

DO $$
BEGIN
    EXECUTE 
        sequence_schema as schema,
        sequence_name as sequence,
        last_value
    FROM information_schema.sequences
    LEFT JOIN (
        EXECUTE 'SELECT last_value FROM ' || schema || '.' || sequence
    ) tmp
    ORDER BY 1, 2;
END
$$;
Run Code Online (Sandbox Code Playgroud)

我找到了一些解决方案,可以创建函数来执行文本或将函数内的查询拼凑在一起并返回结果,但我更喜欢有一个可以运行和修改的查询,但我喜欢。

postgresql sequence postgresql-12

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