在编写CSS时,是否有一个特定的规则或指南应该用于决定何时使用margin以及何时使用padding?
我有一个包含文本的div元素,我想将此div的内容垂直居中对齐.
这是我的div风格:
#box {
height: 170px;
width: 270px;
background: #000;
font-size: 48px;
color: #FFF;
text-align: center;
}Run Code Online (Sandbox Code Playgroud)
<div id="box">
Lorem ipsum dolor sit
</div>Run Code Online (Sandbox Code Playgroud)
做这个的最好方式是什么?
我已经使用了相对布局,我想在屏幕底部设置按钮,但是这会把它全部放到底部,我想有一些余量,所以它在屏幕的末端之间有一些空间/查看和按钮.无论我做什么,按钮边距在2.1+上都没有做任何事情由于某种原因.相对布局包含一个背景,所以我不能但是它的余量.
有人知道解决这个问题吗?
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginBottom="0dp"
android:background="@drawable/background" >
<Button
android:id="@+id/confirm_mobile_button_next"
android:layout_width="fill_parent"
android:layout_height="40dip"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="false"
android:layout_centerHorizontal="false"
android:layout_centerInParent="false"
android:layout_margin="15dp"
android:background="@drawable/button_shape_selector"
android:paddingLeft="10dip"
android:paddingRight="10dip"
android:text="@string/confirm_mobile_no_continue"
android:textColor="@color/white"
android:textStyle="bold" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud) 我正在开发一个具有CSS Reset的遗留项目,*{ margin:0; padding:0 }适用于所有内容.现在,我的新代码不需要它,因为它依赖于Normalize.css.这不是什么大问题,但在某些地方我需要使用这两种风格.
我如何取消设置我的CSS?我已经能够做到*{margin:auto}这一点很好.填充也是如此.是否有相同的方法来重置填充.你是怎么解决这个问题的?
所以我有这个简单的HTML代码.我的问题是,当我将它应用于整个div元素时,为什么背景颜色不会填充颜色边缘,我该如何解决这个问题呢?
<!doctype html>
<html>
<head>
<style>
#footer {
background: #263238;
margin: 100px;
padding: 0;
}
.footer-text {
margin: 0;
color: #fff;
}
</style>
</head>
<body>
<div id="footer">
<div class="footer-text">All Rights Reserved © 2016</div>
</div>
</body>
</html>Run Code Online (Sandbox Code Playgroud)
这是我的java应用程序GUI的一部分,我有一个问题.

这个GUI包含的是一个蓝色的JPanel(容器),默认的FlowLayout作为LayoutManager,它包含一个Box,其中包含两个JPanels(用于删除水平间距,或者我可以使用setHgaps为零而不是Box),每个包含一个JLabel的.
这是我创建GUI部分的代码.
private void setupSouth() {
final JPanel southPanel = new JPanel();
southPanel.setBackground(Color.BLUE);
final JPanel innerPanel1 = new JPanel();
innerPanel1.setBackground(Color.ORANGE);
innerPanel1.setPreferredSize(new Dimension(DEFAULT_WIDTH, DEFAULT_HEIGHT));
innerPanel1.add(new JLabel("Good"));
final JPanel innerPanel2 = new JPanel();
innerPanel2.setBackground(Color.RED);
innerPanel2.setPreferredSize(new Dimension(DEFAULT_WIDTH, DEFAULT_HEIGHT));
innerPanel2.add(new JLabel("Luck!"));
final Box southBox = new Box(BoxLayout.LINE_AXIS);
southBox.add(innerPanel1);
southBox.add(innerPanel2);
myFrame.add(southPanel, BorderLayout.SOUTH);
}
Run Code Online (Sandbox Code Playgroud)
我的问题是如何摆脱外部JPanel(蓝色)和Box之间的垂直填充?
我知道这是填充因为我读到了边距和填充之间的差异?"padding =元素从文本到边框周围(内部)的空间."
这不起作用,因为这必须与组件之间的间隙(空间)有关.-如何在MigLayout中删除JPanel填充?
我试过这个,但它也没用.Java中的JPanel Padding
我正在为我的网站设计一些 CSS。我需要格式化(在标题和段落之间添加一些适当的间距)一段统一文本,其中标题和段落位于单个背景上。margin这可以使用或属性来完成padding。我确实理解这两者在 CSS 中的区别。另外,关于这些 CSS 属性的使用,还有很多问题:
然而,毫无疑问应该使用什么属性来进行正确的文本格式设置。假设我需要像这样设置文本格式:
我应该使用margin或padding控制文本元素(标题和段落)之间的间距吗?<p>建议在和标签上使用什么<h..>?常见的做法是什么?
这是我现在想到的:
/* tiny reset */
html { font-size: 10px; }
html, body { margin: 0; padding: 0; }
* { box-sizing: border-box; }
p {
font-family: 'Roboto', sans-serif;
font-size: 1.6rem;
line-height: 2.5rem;
margin: 0.6rem 0 2.0rem 0;
padding: 0 2px 4px 2px;
width: 100%; /* Opera needs this */
text-rendering: optimizeLegibility;
}
h1, …Run Code Online (Sandbox Code Playgroud)在我的应用中,我希望某些子视图忽略父视图填充。
例如:
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="86dp"
android:clipToPadding="false"
android:padding="8dp">
<TextView
android:id="@+id/history_restart"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_marginBottom="-8dp"
android:layout_marginTop="-8dp"
android:gravity="center"
android:paddingLeft="27dp"
android:paddingRight="27dp"
android:text="@string/history_restart_action_text"
android:textColor="@color/colorAccent"
android:textSize="@dimen/normal_text_size"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
Run Code Online (Sandbox Code Playgroud)
尝试了一下,但没有用:(
我的角度应用程序中有两个彼此相邻的材质按钮。我想在它们之间添加一点填充。但是当我将添加添加padding-right到左侧按钮时,我最终会这样:
| button || button |
Run Code Online (Sandbox Code Playgroud)
对此:
| button || button |
Run Code Online (Sandbox Code Playgroud)
但我想要的是这样的:
| button | | button |
Run Code Online (Sandbox Code Playgroud) 在我的文本区域内,我希望保持距顶部30像素的填充。
textarea {
display: block;
width: 300px;
height: 50px;
padding-top: 30px;
}
Run Code Online (Sandbox Code Playgroud)
但是,一旦在文本区域中填充了文本并且内容开始滚动。不再保留填充。
当您运行此小提琴时,最初会注意到从顶部(文本区域的内部)保留了填充。但是,当您超过150个字符时,填充就消失了。
有什么解决办法吗?
我正在使用bootstrap(3.3.4)构建我的第一个站点,例如“ col-md-#”之类的列在左侧和右侧都有15px的填充。
我可以用边距替换该填充,而以后不会出现问题吗?
原因是我有许多带有彩色背景(颜色或图像)的框,而带有填充的框在带有彩色背景时框之间没有可见的空间。我不明白为什么他们使用填充,我认为一定有一个很好的理由不使用margin(?)