1)我刚刚使用Real Favicon generator完成了我的第一个favicon文件。在该网站的常见问题解答中,它表示将favicon保留在网站的根目录中是最佳做法。我做到了,但现在ROOT文件夹有太多文件--26个新文件!
如果将favicon文件移动到子文件夹,我将失去什么? import javafx.application.Application;
import javafx.beans.property.ReadOnlyStringWrapper;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.TreeItem;
import javafx.scene.control.TreeTableCell;
import javafx.scene.control.TreeTableColumn;
import javafx.scene.control.TreeTableColumn.CellDataFeatures;
import javafx.scene.control.TreeTableView;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.stage.Stage;
public class TreeTableViewSample extends Application {
private static final Image icon = new Rectangle(12, 12, Color.CORNFLOWERBLUE).snapshot(null, null);
public static void main(String[] args) {
Application.launch(args);
}
@Override
public void start(Stage stage) {
stage.setTitle("Tree Table View Samples");
final Scene scene = new Scene(new Group(), 200, 400);
Group sceneRoot = (Group)scene.getRoot();
//Creating tree items
// final TreeItem<String> childNode1 = new TreeItem<>("Child Node 1", new ImageView(icon));
// final TreeItem<String> childNode2 = new TreeItem<>("Child Node 2", new ImageView(icon));
// final TreeItem<String> childNode3 = new TreeItem<>("Child Node 3", new ImageView(icon));
final TreeItem<String> childNode1 = new TreeItem<>("Child Node 1");
final TreeItem<String> childNode2 = new TreeItem<>("Child Node 2");
final TreeItem<String> childNode3 = new TreeItem<>("Child Node 3");
//Creating the root element
// final TreeItem<String> root = new TreeItem<>("Root node", new ImageView(icon));
final TreeItem<String> root = new TreeItem<>("Root node");
root.setExpanded(true);
//Adding tree items to the root
root.getChildren().setAll(childNode1, childNode2, childNode3);
//Creating a column
TreeTableColumn<String,String> column = new TreeTableColumn<>("Column");
column.setPrefWidth(150);
//Defining cell content
column.setCellValueFactory((CellDataFeatures<String, String> p) ->
new ReadOnlyStringWrapper(p.getValue().getValue()));
// cell factory to display graphic:
column.setCellFactory(ttc -> new TreeTableCell<String, String>() {
private final ImageView graphic = new ImageView(icon);
@Override
protected void updateItem(String item, boolean empty) {
super.updateItem(item, empty);
setText(empty ? null : item);
setGraphic(empty ? null : graphic);
}
});
//Creating a tree table view
final TreeTableView<String> treeTableView = new TreeTableView<>(root);
treeTableView.getColumns().add(column);
treeTableView.setPrefWidth(152);
treeTableView.setShowRoot(true);
sceneRoot.getChildren().add(treeTableView);
stage.setScene(scene);
stage.show();
}
}
2)我注意到不同的网站在favicon代码方面使用不同的方法。例如,Bootstrap只有这些代码行:
Ex: /favicon/favicon.ico
<link rel=apple-touch-icon href=/apple-touch-icon.png>
其他人有很多喜欢的东西,比如Wordpress.com:
<link rel=icon href=/favicon.ico>
对于一个不想在所有浏览器中显示的简单网站,我真的应该使用第二个例子的所有文件 - WordPress(由favicon生成器提供),或者我会对最小化感到满意引导方法?
答案 0 :(得分:9)
1)通过将图标放在子目录中,您会遇到一些小缺点:
favicon.ico
和browserconfig.xml
。如果图标位于根文件夹中,则可以跳过两行代码,因为这是IE按惯例查看的位置。/apple-touch-icon-precomposed-120x120.png
。link
标记)。 Yandex主要用于俄罗斯。 2)您只能保留一个Apple Touch图标。这够好了。请务必保留apple-touch-icon.png
并将其设为180x180。 Next release of RealFaviconGenerator will generate only one Touch icon by default
哦,作为RealFaviconGenerator的作者,我祝贺你的出色选择; - )
答案 1 :(得分:1)
你不会失去任何东西。只要您在链接标记中引用正确的路径,一切都应该很好。此外,您不必使用.ico。没有多少人知道这一点,但只要您在代码中正确引用它,就可以使用其他图像类型。