小编Ben*_*ers的帖子

为什么不在HTML中使用表格进行布局?

似乎普遍认为表不应该用于HTML中的布局.

为什么?

我从来没有(或很少诚实地)看到这方面的好论据.通常的答案是:

  • 将内容与布局分开是件好事
    但这是一个错误的论点; 陈词滥调.我想使用表格元素进行布局与表格数据几乎没有关系.所以呢?我的老板在乎吗?我的用户在乎吗?

    也许我或我的开发人员必须维护一个网页关注......一个表不易维护吗?我认为使用表比使用div和CSS 更容易.

    顺便说一下...为什么使用div或span将内容与布局和表格分开?只使用div来获得一个好的布局通常需要很多嵌套的div.

  • 代码的可读性
    我认为这是另一种方式.大多数人都懂HTML,很少有人理解CSS.

  • SEO最好不要使用表格
    为什么?任何人都可以证明它是有证据的吗?或谷歌发表的声明表示,从SEO的角度来看,表格是不受欢迎的?

  • 表格较慢.
    必须插入额外的tbody元素.这是现代网络浏览器的花生.向我展示一些基准,其中使用表会显着减慢页面的速度.

  • 如果没有桌子,布局检修会更容易,请参阅css Zen Garden.
    大多数需要升级的网站也需要新内容(HTML).新版本的网站只需要新的CSS文件的情况不太可能发生.Zen Garden是一个不错的网站,但有点理论上.更不用说它滥用 CSS了.

我真的对使用divs + CSS而不是表格的好参数感兴趣.

html css

665
推荐指数
24
解决办法
45万
查看次数

我们应该@Override接口的方法实现吗?

是否应该使用实现接口方法的方法进行注释@Override

注释javadocOverride说:

指示方法声明旨在覆盖超类中的方法声明.如果使用此批注类型注释方法但不覆盖超类方法,则编译器需要生成错误消息.

我不认为接口在技术上是超类.或者是吗?

Question Elaboration

java oop annotations interface

414
推荐指数
7
解决办法
15万
查看次数

是否应使用或不使用公共访问修饰符声明Java接口中的方法?

是否应使用或不使用public访问修饰符声明Java接口中的方法?

当然,技术上没关系.实现a的类方法interface总是如此public.但什么是更好的惯例?

Java本身并不一致.例如,参见Collectionvs. ComparableFuturevs ScriptEngine..

java coding-style interface public-method

284
推荐指数
8
解决办法
10万
查看次数

Eclipse文件夹Referenced Libraries消失

在Eclipse 3.4.1版的Java项目中,"Referenced Libraries"文件夹有时会从"Project Explorer"视图中消失.所有第三方jar都直接显示在项目文件夹的根目录中.该项目编译并运行良好.这似乎是一个GUI问题.

我该怎么办这个文件夹?

eclipse

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

缩略语Camel Back

我经常看到Java类名称

XmlReader
Run Code Online (Sandbox Code Playgroud)

代替

XMLReader
Run Code Online (Sandbox Code Playgroud)

我的直觉是完全是大写的缩略词,但显然很多人都有不同的看法.或许这只是因为许多代码生成器在使用首字母缩略词时遇到了麻烦......

所以我想听听民意.如何将包含首字母缩略词的类名称大写?

java camelcasing naming-conventions

36
推荐指数
2
解决办法
8484
查看次数

在PostgreSQL中更改系统语言和错误消息

是否可以从PostgreSQL更改系统消息的语言?

例如,在MSSQL中,可以使用SQL语句SET LANGUAGE.

postgresql

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

为Eclipse中的接口实现添加缺少@Override注释的警告

在使用JDK1.6.0_10的Eclipse 3.4.1中,如何@Override在实现接口方法的方法上对缺少的注释激活警告?

在"首选项"窗口中,此选项:

Java>编译器>错误/警告>注释>缺少'@Override'注释

适用于覆盖超类方法的方法上缺少注释,但它对接口方法没有任何作用.

eclipse eclipse-3.4 jdk1.6

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

使用Guice 2.0的ClassNotFoundException

下面的代码使用Guice 2.0生成错误.有了Guice 1.0,一切都很好.JDK是Java 6更新15.

public class App {
    public static void main(String[] args) {
        Guice.createInjector(new AbstractModule() {
            @Override
            protected void configure() {
                // just testing 
            }
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

错误是:

Exception in thread "main" java.lang.NoClassDefFoundError: [Lorg/aopalliance/intercept/MethodInterceptor;
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
    at java.lang.Class.getDeclaredMethods(Class.java:1791)
    at com.google.inject.internal.ProviderMethodsModule.getProviderMethods(ProviderMethodsModule.java:78)
    at com.google.inject.internal.ProviderMethodsModule.configure(ProviderMethodsModule.java:70)
    at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:223)
    at com.google.inject.spi.Elements$RecordingBinder.install(Elements.java:232)
    at com.google.inject.spi.Elements.getElements(Elements.java:101)
    at com.google.inject.InjectorShell$Builder.build(InjectorShell.java:135)
    at com.google.inject.InjectorBuilder.build(InjectorBuilder.java:102)
    at com.google.inject.Guice.createInjector(Guice.java:92)
    at com.google.inject.Guice.createInjector(Guice.java:69)
    at com.google.inject.Guice.createInjector(Guice.java:59)
    at App.main(App.java:6)
Caused by: java.lang.ClassNotFoundException: org.aopalliance.intercept.MethodInterceptor
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) …
Run Code Online (Sandbox Code Playgroud)

java guice classnotfoundexception

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

MinGW"stdio.h:没有这样的文件或目录"

我正在尝试使用MinGW在Windows XP下编译C程序.gcc.exe提供以下错误:

stdio.h:没有这样的文件或目录

代码(hello.c)如下所示:

#include < stdio.h >

void main()
{
    printf("\nHello World\n");
}
Run Code Online (Sandbox Code Playgroud)

我使用批处理文件来调用gcc.批处理文件如下所示:

@echo off
set OLDPATH=%PATH%
set path=C:\devtools\MinGW\bin;%PATH%
set LIBRARY_PATH=C:\devtools\MinGW\lib
set C_INCLUDE_PATH=C:\devtools\MinGW\include

gcc.exe hello.c 

set path=%OLDPATH%
Run Code Online (Sandbox Code Playgroud)

我试过选项-I没有效果.我做错了什么?

c compiler-construction

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

查找 TextSpan 以使用 Flutter 测试

使用 Flutter WidgetTester 如何点击 TextSpan,如下面的代码所示?

RichText(
  text: TextSpan(
    children: [
      TextSpan(text: 'aaa '),
      TextSpan(
        text: 'bbb ',
        recognizer: TapGestureRecognizer()
          ..onTap = () { 
            // How to reach this code in a widget test?
          },
      ),
      TextSpan(text: 'ccc'),
    ],
  ),
)
Run Code Online (Sandbox Code Playgroud)

flutter flutter-test

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