如何获得更大的静态滚动条(又称普通滚动条)?

我很高兴外部叠加滚动条终于消失了。

但滚动条仍然是一个剃刀细线,当鼠标hover时,它变成一个不那么剃刀的细滚动条,但仍然是细滚动条。

如何获得正常的滚动条? 即,就像在其他操作系统中一样,在Firefox中,滚动条不会根据鼠标指向的内容而改变,并且具有良好的宽度。

我已经试过了

gsettings set com.canonical.desktop.interface scrollbar-mode normal 

但没有运气。

编辑此文件/usr/share/themes/Ambiance/gtk-3.0/gtk-widgets.css

寻找这一行(在1200行左右):- GtkRange-slider-width:10;

并将10更改为更大的数字,如20或30,并完成:)

我也认为它们太小了……

看这个图像:

在此处输入图像描述

如果您将滚动条大小更改为16并且希望它们保持这种状态,并且当您没有鼠标时不缩小,则在上图中进行更改。

如果您使用16以外的尺寸,只需尝试使用边距尺寸即可。

我认为你应该在那里保持谨慎。 我们中的许多人不建议您编辑主题的系统范围默认值,除非您确实打算干扰系统中所有用户帐户的活动。 如果您在执行此操作时碰巧出错,则会影响所有用户帐户。 另一个需要注意的是,当更新包时,您的更改将被删除。

此策略的另一个缺点是它只会更改一个GTK主题的行为,但您可能想要更改所有GTK-3.0主题中的滚动条大小。

而是编辑用户帐户内的配置文件。 诀窍是弄清楚哪一个是到达所需端点的最短距离。 您编辑的GTK文件是CSS(层叠样式表)设置的一部分,因此您在帐户中添加的自定义将修改设置。

在您的用户帐户中,在〜/ .config / gtk-3.0 / gtk.css文件夹中,我目前在名为“gtk.css”的文件中有此内容

 .scrollbar { -GtkScrollbar-has-backward-stepper: true; -GtkScrollbar-has-forward-stepper: true; -GtkRange-slider-width: 20; -GtkRange-stepper-size: 20; } 

如果您稍微使用它,您会发现可以从您上面编辑的主题文件中集成许多特定的更改。 有一段时间我非常努力地设置很多设置,但我现在处于“保持简单”模式。

如果你确实想要编辑很多设置,那么正确的做法是复制整个gtk-widgets.css文件并将其放在〜/ .config / gtk-3.0文件夹中。 然后去摆弄设置的小镇。

在同一个文件夹中,我有一个名为“settings.ini”的文件

 [Settings] gtk-primary-button-warps-slider = false 

这可以防止滚动条中的单击移动到文件中的某个点,而只是前进一个屏幕。 我更喜欢!

另一件值得了解的事情是,更改该主题文件(如我之前建议的@Dorian或用户帐户更改为所有基于GTK-3.0的主题)仅更改基于GTK-3.0工具包的程序。 它不会更改所有应用程序的滚动条。 它只适用于读取gtk-3.0配置文件的那些。 由于您正在编辑gtk-3.0主题,因此使用QT或gtk-2.0编写的应用程序不会更改。 因此,更改所有程序的滚动条大小比您预期的更困难/乏味。

我也改变了gtk-2.0中的滚动条宽度。 这是在一个单独的文件夹〜/ .config / gtk-2.0中完成的。 要创建的文件名为gtkrc

 style "scroll" { GtkScrollbar::slider-width = 20 } 

请注意,gtk-2.0是一个设计不同的设置,因此语法不同,您不能只将gtk-3.0 css复制到gtk-2.0文件夹中。

我注意到当你使滚动条不同时某些应用程序表现不好,因为滑块槽内“抓取器”的大小没有正确resize。 我怀疑@ Dorian文件中的滚动条拖动更改会对此有所帮助。 我可以回来尝试一下。 我会告诉你。

简介:关键的“旧时Linux系统管理员建议是”不要在系统范围内编辑配置文件。 您正在使您的系统处于危险之中,您的更改将不会持续修订,并且需要root访问权限,这对于这样的整容事物来说永远不会有好处。 找到一种在您的用户帐户中进行更改的方法。

PS。 如果你真的想要摆弄系统文件(有时我会这样做,如果我真的想坚持所有用户都有我最喜欢的足球队颜色作为他们的壁纸和配色方案:)),你应该做的第一件事就是复制一份原始文件并将原始名称命名为“gtk-widgets.css.orig”。 然后,当您编辑文件时,将编辑副本保存为“gtk-widgets.css.20160919”,其中我的结尾处有YYYYMMDD日期。 这样,当更新deb包时,您将获得已编辑文件的副本。 编辑名为gtk-widgets.css的那个将被包安装删除。

以下是恢复滚动条的步骤,滚动条不会消失并具有永久宽度,即“经典”滚动条。 在Ubuntu 16.04中的GNOME Flashback会话中测试过(也可以在Unity中使用)。

步骤1.备份/etc/environment 。 运行sudo nano /etc/environment并在那里添加下一行:

 GTK_OVERLAY_SCROLLING=0 

这将阻止滚动条的自动隐藏行为。

步骤2.为了避免篡改主题文件/usr/share/themes/Ambiance/gtk-3.0/gtk-widgets.css我们将从那里借用一些代码,改变它并将其放入用户配置文件夹中。 创建~/.config/gtk-3.0/gtk.css并将下一行放入其中:

 /* Adding the buttons on the edges (if you don't need them, skip the next 4 lines) */ .scrollbar { -GtkScrollbar-has-backward-stepper: 1; -GtkScrollbar-has-forward-stepper: 1; } /* Scrollbar trough squeezes when cursor hovers over it. Disabling that */ .scrollbar.vertical:hover:dir(ltr), .scrollbar.vertical.dragging:dir(ltr) { margin-left: 0px; } .scrollbar.vertical:hover:dir(rtl), .scrollbar.vertical.dragging:dir(rtl) { margin-right: 0px; } .scrollbar.horizontal:hover, .scrollbar.horizontal.dragging, .scrollbar.horizontal.slider:hover, .scrollbar.horizontal.slider.dragging { margin-top: 0px; } /* Slider widens to fill the scrollbar when cursor hovers over it. Making it permanent */ .scrollbar.slider.vertical:dir(ltr):not(:hover):not(.dragging) { margin-left: 0px; } .scrollbar.slider.vertical:dir(rtl):not(:hover):not(.dragging) { margin-right: 0px; } .scrollbar.slider.horizontal:not(:hover):not(.dragging) { margin-top: 0px; } 

步骤3.创建~/.config/gtk-3.0/settings.ini并将下一行添加到其中:

 [Settings] gtk-primary-button-warps-slider = false 

当您单击滑块两侧的滚动条时,这将恢复逐页滚动行为。 如果此文件已存在,只需在其[Settings]部分中添加最后一行。

步骤4.卸载overlay-scrollbaroverlay-scrollbar-gtk2包 – 您将不再需要它们。

PS如果您使用某些需要超级用户权限的应用程序(即Synaptic,gksudo等),那么您还应将这些gtk.csssettings.ini文件放入root的profile文件夹中:

 sudo cp ~/.config/gtk-3.0/gtk.css /root/.config/gtk-3.0/ sudo cp ~/.config/gtk-3.0/settings.ini /root/.config/gtk-3.0/ 

PPS如果您发现这些滚动条太窄,请将它们放宽。 只需将下一行添加到~/.config/gtk-3.0/gtk.css

 .scrollbar { -GtkRange-slider-width: 15; } 

根据需要增加宽度(默认值为10)。 如果需要,还可以更新/root/.config/gtk-3.0/gtk.css

更改-GtkRange-slider-width对默认的GTK + 3主题没有影响。 相反,你可以这样做:

 scrollbar slider { /* Size of the slider */ min-width: 20px; min-height: 20px; border-radius: 22px; /* Padding around the slider */ border: 5px solid transparent; } 

(将上面的内容放在~/.config/gtk-3.0/gtk.css 。)

我正在使用Ubuntu 18.04,这是唯一一个改变一切滚动条的解决方案,从firefox到libreoffice再到gnome终端。 上述解决方案适用于一两个应用程序,但不适用于所有应用程序。

注意:这为您提供了非常适合大型显示器的大型滚动条,因为您可以从眼角看到它们,而无需在每次想要抓住屏幕的同时一直看到屏幕的一侧。 如果你想要更小的,将所有70px更改为较小的数字,如20px或30px,并相应调整。

将以下文本放入〜/ .config / gtk-3.0 / gtk.css:


 .scrollbar, scrollbar { -GtkScrollbar-has-backward-stepper: 1; -GtkScrollbar-has-forward-stepper: 1; } scrollbar slider { background-color: @scrollbar_track_color; } .scrollbar.vertical slider, scrollbar.vertical slider { min-height: 150px; min-width: 70px; } .scrollbar.horizontal.slider, scrollbar.horizontal slider { min-width: 40px; min-height: 10px; } .scrollbar.vertical.slider:hover, scrollbar.vertical:hover slider { min-width: 70px; } .scrollbar.horizontal.slider:hover, scrollbar.horizontal:hover slider { min-height: 10px; } .scrollbar.contents, scrollbar contents { background-color: transparent; background-image: none; background-size: 0; border: none; border-radius: 0; } .scrollbar.trough, scrollbar trough { background-image: none; border: none; } .scrollbar:hover:backdrop, .scrollbar.dragging:backdrop, scrollbar:hover:backdrop, scrollbar.dragging:backdrop { background-color: alpha(@backdrop_selected_bg_color, 0.5); } .scrollbar.vertical:hover:dir(ltr), .scrollbar.vertical:active:dir(ltr), scrollbar.vertical:hover:dir(ltr), scrollbar.vertical:active:dir(ltr) { margin-left: 0px; } .scrollbar.vertical:hover:dir(rtl), .scrollbar.vertical:active:dir(rtl), scrollbar.vertical:hover:dir(rtl), scrollbar.vertical:active:dir(rtl) { margin-right: 0px; } .scrollbar.horizontal:hover, .scrollbar.horizontal:active, scrollbar.horizontal:hover, scrollbar.horizontal:active { margin-top: 0px; } .scrollbar.slider, scrollbar slider { background-color: alpha(@backdrop_filling_bg, 0.75); border-radius: 10px; } .scrollbar.slider:hover, .scrollbar.slider:active, scrollbar slider:hover, scrollbar slider:active { border-radius: 20px; margin: 0; } .scrollbar.vertical:dir(ltr):not(:hover):not(.dragging), scrollbar.vertical:dir(ltr):not(:hover):not(.dragging) { margin-left: 0px; } .scrollbar.vertical:dir(rtl):not(:hover):not(.dragging), scrollbar.vertical:dir(rtl):not(:hover):not(.dragging) { margin-right: 0px; } .scrollbar.horizontal:not(:hover):not(.dragging), scrollbar.horizontal:not(:hover):not(.dragging) { margin-top: 0px; } .scrollbar.slider:hover, scrollbar slider:hover { background-color: alpha(@backdrop_filling_bg, 0.6); } .scrollbar.slider:active, scrollbar slider:active { background-color: @backdrop_filling_bg; } .scrollbar.slider:backdrop, scrollbar slider:backdrop { background-color: alpha(@backdrop_filling_bg, 0.75); } .scrollbar.slider:hover:backdrop, scrollbar slider:hover:backdrop { background-color: alpha(@backdrop_filling_bg, 0.6; } .scrollbar.slider:active:backdrop, scrollbar slider:active:backdrop { background-color: @backdrop_filling_bg; } scrollbar { min-width: 70px; min-height: 70px; }