小编Ben*_*ton的帖子

Div扩展到某些内容的大小

我有一堆div,里面有一个内容div.在内容div中有3个元素,a h1,a p和a span,都是左对齐的.我想要发生的是以下内容:

  • 内容div应垂直和水平居中
  • 内容的div应该是完全一样宽文本h1文本span(以较长者为准),如果上述max-width这些应包
  • p应宽75%作为股利内容而不是对内容div的大小产生影响(实际上是75%一样宽的h1span,以较长者为准)

但是我遇到了以下问题:

  • 问题1:拥有一个long p元素会导致内容div扩展到它,max-width无论h1or 的大小如何span.我尝试使用绝对定位来解决这个问题,但它会破坏div的垂直居中
  • 问题2:有一个长h1元素留下一个空格,其中单词突破2行,使内容div不显示居中

请参阅下面的代码片段,以阐明我所追求的内容以及出现的问题,边界只是为了帮助您了解正在发生的事情.

有没有人知道这是如何可能的?我想坚持使用CSS,因为这些需要响应,尽管如果有一个简单的JS/jQuery解决方案,它将被考虑.

编辑:为了澄清我在这之后的视觉效果是为什么示例好或坏.我还添加了删除边框的功能,以展示我所说的视觉中心的意思:

1)好:内容div适合宽度h1,看起来居中,没有边框作为左右相等的空格h1

2)好:内容div适合宽度,span因为它比它更长h1,看起来居中而没有边界作为左右相等的空间span

问题1:

3)坏:p正在扩展内容div的宽度,看起来向右移动没有边框,因为右边比左边更多.如果p没有扩展div并保持在75%的宽度,这将不会发生

4)改进3但仍然不好:在各种SO问题中发现的潜在修复显示绝对定位会阻止p扩展内容div,但是现在它不是流程的一部分它会扰乱垂直居中

问题2:

5)坏:这里的问题是h1元素,因为它现在比max-width它分成2行更长.但是第一行的末尾和max-widthdiv 的末尾之间的额外空间是保留的,因此当删除边界时它看起来不居中,因为右侧有比左侧更多的空间.h1

6)修复5但不是解决方案:手动断开线(使用a …

html javascript css jquery

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

使用Express路由处理请求参数中的斜杠字符

我目前正在使用Express开发一个URL缩短应用程序.我希望用户能够输入这样的URL:

https://www.exampleurlshortener.com/new/https://www.google.com
Run Code Online (Sandbox Code Playgroud)

问题是每当我尝试使用Express指定参数时,它只会提取'https:'部分,之后的所有内容都会丢失,因为2个反斜杠正在注册为新路径:

app.get('/new/:url', (req, res) => {
  console.log(req.params.url) // outputs 'https:'
Run Code Online (Sandbox Code Playgroud)

我想将每个部分指定为一个新参数,但如果inner是空白,则最终会抛出404.我需要使用此方法检查内部是否为空,否则用户将能够键入https:/something/www.google.com

app.get('/new/:prot/:inner/:address', (req, res) => {
  // throws 404 on valid addresses
Run Code Online (Sandbox Code Playgroud)

有一种简单的方法可以解决这个问题吗?是否可以在请求中的某处检查完整URL?或者参数可以忽略反斜杠?

node.js express

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

标签 统计

css ×1

express ×1

html ×1

javascript ×1

jquery ×1

node.js ×1