小编onk*_*kar的帖子

水平全宽,垂直弹性盒中溢出

我正在尝试创建一个既可以水平滚动又可以垂直滚动的弹性框,以备需要时使用。这是一种 Flexbox 中的表格布局。在下图中,您可以看到我想要实现的概念。当视口不太小或太短时,此功能可以正常工作。 正常布局

然后我们可以调整视口的大小。这对于垂直溢出是正确的。出现一个滚动条,我们可以向下滚动。遗憾的是,这在水平方向上不能正常工作。我们还得到了水平部分的滚动条。但黄色行(带测试)不是我需要的完整宽度。

水平弹性盒子的问题

const groups = [];
for (let i = 0; i < 15; i++) {
  const rows = [];
  for (let j = 0; j < 15; j++) {
    rows.push({
      cols: [
        "col 1",
        "col 2",
        "col 3",
        "col 4",
        "col 5",
        "col 6",
        "col 7",
        "col 8",
        "col 9",
      ]
    });
  }

  groups.push({
    group: 'test' + i,
    open: false,
    rows
  });
}

var app = new Vue({
  el: '#app',
  data: {
    rows: groups
  }
})
Run Code Online (Sandbox Code Playgroud)
.container …
Run Code Online (Sandbox Code Playgroud)

html css layout flexbox responsive

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

一旦成为单列,将对齐内容空间居中

我正在尝试设计一个有两个子元素的div,带有flexbox和flex-wrap,没有媒体查询,在一定的宽度下有空间,但一旦它是一个单列居中(而不是目前的一次)它包裹它就像弹性启动)。希望这是有道理的。

我认为这是相关的代码,基本上当它换行时,我希望之间的空间成为中心:

HTML 和 CSS

.content-container {
    display: flex;
    justify-content: center;
    width: 100%;
}

.content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 82%;
}

.content h1 {
    min-width: 20rem;
}

.content h6 {
    min-width: 15.5rem;
}
Run Code Online (Sandbox Code Playgroud)
<div class="content-container">
    <div class="content">
        <h1>'content1'</h1>
        <h6>'content2'</h6>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

html css flexbox

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

如何在全宽的div中滑动

我想在移动设备上滑入带有几个框的 div,并且在滑入动画期间不将框元素切掉,如何使用 CSS 实现此目的?我有以下代码和 Jsfiddle 链接: https: //jsfiddle.net/dealwap/prwdm724/。该问题仅发生在移动设备上。

HTML:

    .box {
      flex: 0 0 80px;
      height: 80px;
      background-color: red;
      margin: 10px;
      left: 10px;
    }

    .container{
      z-index: 10;
      width: 100%;
      position: relative;
      display: flex;
      justify-content: flex-start;
      margin: auto;
      overflow: auto;
      -ms-overflow-style: none;
      scrollbar-width: none;
      animation: 2s ease-in-out 0s 1 slideInFromLeft;
    }


    @keyframes slideInFromLeft {
      0% {
        transform: translateX(-100%);
      }
      100% {
        transform: translateX(0);
      }
    }
Run Code Online (Sandbox Code Playgroud)
   <div class="container">
      <div class="box"></div>
      <div class="box"></div>
      <div class="box"></div>
      <div class="box"></div>
      <div class="box"></div>
      <div class="box"></div>
      <div …
Run Code Online (Sandbox Code Playgroud)

html css css-transitions css-animations

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

通用接口工厂

我有一个界面:

public interface Handler<E extends Event> {
    void handle(E event);
}
Run Code Online (Sandbox Code Playgroud)

以及它的两个实现:

public class SignupEventHandler implements Handler<SignupEvent> {
    @Override
    public void handle(SignupEvent event) {}
}
Run Code Online (Sandbox Code Playgroud)

public class SignoutEventHandler implements Handler<SignoutEvent> {
    @Override
    public void handle(SignoutEvent event) {}
}
Run Code Online (Sandbox Code Playgroud)

请注意,Event它本身是一个接口,由SignupEvent和实现SignoutEvent

我想知道为Handler.

public class HandlerFactory {
    public static Handler<? extends Event> getHandler(Event event) {
        if(event.type().equals("SignupEvent")) {
            return new SignupEventHandler();
        } else if(event.type().equals("SignoutEvent")) {
            return new SignoutEventHandler();
        } else {
            throw new IllegalArguementException("Unrecognised event …
Run Code Online (Sandbox Code Playgroud)

java factory

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

Java Files.walk遇到异常错误后能否继续执行

这是我第一次在 Java 中使用 Files.walk,我非常喜欢它,尤其是 Path 类。它坚固耐用且用途广泛。

然而,我不喜欢的是,当遍历文件夹时,如果迭代器遇到障碍......就像它遇到了用户无权查看的文件夹或在抛出后可能遇到的任何错误例外的是,它不会继续,也不会产生要使用的路径列表。

这是我如何使用该方法的示例:

try {
    Stream<Path> paths    = Files.walk(rootPath);
    List<Path>   pathList = paths.collect(Collectors.toList());
    for (Path path : pathList) {
        //Processing code here
    }
 }
catch (FileSystemException a) {System.err.format("FileSystemException: %s%n", a);System.out.println(a.getStackTrace());}
catch (UncheckedIOException b) {System.err.format("UncheckedIOException: %s%n", b);System.out.println(b.getCause().getLocalizedMessage());}
catch (IOException c) { System.err.format("IOException: %s%n", c);System.out.println(c.getStackTrace());}
Run Code Online (Sandbox Code Playgroud)

现在,如果 Files.walk 方法在尝试遍历文件夹时遇到某种错误,它会抛出异常,当然代码会在捕获异常后继续执行。

我想要它做的是忽略它遇到的任何问题,并继续迭代它可以遍历的任何文件夹,而不会停止。

这可能吗?

java java-io

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

由编译器完成的 Java try-with-resource 实现

我想知道,当发生异常时,try with resource 语句如何在进入 catch 块之前设法关闭资源。当异常发生时,执行立即跳转到 catch 块。所以实际上 try-with-resource 关闭资源的地方。

为了更好地理解它是如何工作的,我决定看看编译器是如何实现它的。我编写了以下代码并编译了它。

public class Test
{
    public static void main(final String[] args) {
       //I used same JDK for compilation and execution.
        System.out.println("Java version: " + System.getProperty("java.version") + "\n");
        try(CloseMe me = new CloseMe(); 
                CloseMeToo meToo = new CloseMeToo()){
                
                System.out.println("trying");
                throw new Exception("try failed");

            } catch(Exception e) {
                System.out.println("failed");
                System.out.println("\n");
                System.out.println(e.getMessage());
                System.out.println(e.getSuppressed()[0].getMessage());
                System.out.println(e.getSuppressed()[1].getMessage());
            }
    }
}

class CloseMe implements AutoCloseable {
    @Override
    public void close() throws Exception {
        System.out.println("me closing!");
        throw new …
Run Code Online (Sandbox Code Playgroud)

java try-with-resources

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