什么叫规则?规则有什么作用?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么叫规则?规则有什么作用?相关的知识,希望对你有一定的参考价值。
10—35字左右,越短越好!
规则,是运行、运作规律所遵循的法则。 规则,一般指由群众共同制定、公认或由代表人统一制定并通过的,由群体里的所有成员一起遵守的条例和章程。它存在三种形式:明规则、潜规则、元规则,无论何种规则只要违背善恶的道德必须严惩不贷以维护世间和谐;明规则是有明文规定的规则,存在需要不断完善的局限性;潜规则是无明文规定的规则,约定俗成无局限性,可弥补明规则不足之处;元规则是一种以暴力竞争解决问题的规则,善恶参半,非道德之理的文明之道。中文名
规则
外文名
rule
依附条件
生活的需要
规 律
随着社会的发展,相继废立
简述
规则,是运行、运作规律所遵循的法则。
规则是指规定出来供大家共同遵守的制度或章程。不成文规定,而更多的时候,规则是得到每个社会公民承认和遵守而存在的。行为规则要有助于一种秩序的型构,必须满足下述两个条件:
第一,个人遵守这些规则;
第二,个人运用这些规则去实现他们自己的目的,而这些个人的目的在很大程度上则是那些确立这些规则或有权修正这些规则的人所不知道的。
正如法律领域中所发生的情形那样,如果权力机构刻意制定了某些行为规则,那么只有当这些规则成为个人计划的依据的时候,它们才会发挥它们的作用。因此,那种经由实施行为规则来维续一种自生自发秩序的做法,必须始终以长远的结果为目标; 毋庸置疑,这种行为规则与那些为已知己特定目的服务的组织规则构成了鲜明的对照,这样的组织规则从根本上讲必定是以可预见的短期结果为目标的。更有进者,上述两种规则之间的区别还导致了行政官员与法官或 法律制定者在视域之间的明显区别:行政官员所关注的必定是特定且已知的结果,而法官或法律制定者所关注的则应当是对一种抽象秩序的维护,而不论特定且可预见的结果为何。集中关注特定的结果,必定会导致短视,因为只有在短期内,特定结果才是可预见的;此外,对特定结果的关注,还会导致特定利益群体之间或特定利益之间的冲突,而这种冲突也惟有通过一个权力机构的裁决(即支持一方或另一方的裁决)才能够得到解决。因此,倾力关注可见的短期结果,会一步一步地把整个社会变成一个可操纵的组织。与此同理,如果我们只埋头于即时性的直接结果,那么从长远的角度来看,牺牲的就肯定是自由。因此,一个由“法律支配”的社会(nomocratic society),必须把强制完全用来实施那些有助益于一种长远秩序的规则。
第一, 社会生活中存在着这样一种结构,它所具有的可探知的组成部分并没有被人们理解成有意识的构造之物,甚或它们本身也没有呈现出可辨识的设计方案,而且就是在这种结构之中,我们也不知道有些特定的事情为什么会发生;因此,与那种刻意建构的组织相比较,上述那种结构应当是我们成功追求自己目的的一种更有效的基础。
第二, 有关任何人都不知道变化的原因(这些变化所记载的事实,从整体上来说乃是任何人都不知道的。)这种现象,对我们来说也是极为有利的。显而易见,我们的上述观点乃是与 17世纪以降一直支配着欧洲思想的建构论唯理主义(constructivist rationalism)观念完全相相悖的,因此,也惟有伴随着进化论 理性主义或批判理性主义(evolutionary or critical rationalism)的传播,上述观点才会得到普遍的接受,因为进化论理性主义或批判理性主义不仅意识到了理性所具有的力量,而且也意识到了理性所具有的限度,更是认识到了这种理性本身也是社会进化的一个产物。另一方面,人们对那种符合建构论唯理主义者之标准的简单明确之秩序的诉求,却必定会把那种更具包容性的秩序摧毁掉,因为这种秩序远不是我们的刻意建构能力所能及者。自由意味着我们在某种程度上已经把自己的命运托付给了我们无力控制的种种力量,而这似乎是那些建构论者所不能容忍的,由于他们相信人能够主宰自己的命运——就好像文明和理性本身都是人的造物似的。
一切体制,不论是政治体制、 教育体制、宗教体制还是家庭体制,都被规则所 统治,公司体制也不例外。规则就是指参与者要想被体制接受并幸存下来就必须奉行的规范条例。
有规则的设立,说到底都遵循着一条根本规则:暴力最强者说了算。这是一条元规则,决定规则的规则。 参考技术A 规则即规矩和规章,规则无处不有,人类有人类的规则、自然界有自然界的规则;有些规则是人为确定的,有些规则是特定俗成的,正所谓“无规矩不成方圆”,人类在进步和发展中为自己订立了许许多多的规则,这些规则存满了我们的现实生活。现实生活中我们的所做所为都是在规则中进行,操作有操作规则、交通有交通规则、法律有法律规则、安全又安全规则等等;
规则既是约束人行为规范的制度,同时规则又是维护人生命安全的保护伞;假如没有交通规则,我们的生活会是什么样?假如没有安全规则,我们的生产秩序又会是什么样?所以,我们既然给自己制定了规则,我们就有义务去维护它、遵守它! 参考技术B 规则,一般指由群众共同制定、公认或由代表人统一制定并通过的,由群体里的所有成员一起遵守的条例和章程。它存在三种形式:明规则、潜规则、元规则,无论何种规则只要违背善恶的道德必须严惩不贷以维护世间和谐;明规则是有明文规定的规则,存在需要不断完善的局限性;潜规则是无明文规定的规则,约定俗成无局限性,可弥补明规则不足之处;元规则是一种以暴力竞争解决问题的规则,善恶参半,非道德之理的文明之道。 参考技术C 规则:规定出来供大家共同遵守的制度或章程。(普遍性)
规则,是以一种可持续可预测的方式运用信息的系统性决策程序。
规则是多种多样的。
扩展:规则即规矩和规章,规则无处不有,人类有人类的规则、自然界有自然界的规则;有些规则是人为确定的,有些规则是特定俗成的,正所谓“无规矩不成方圆”,人类在进步和发展中为自己订立了许许多多的规则,这些规则存满了我们的现实生活。现实生活中我们的所做所为都是在规则中进行,操作有操作规则、交通有交通规则、法律有法律规则、安全又安全规则等等; 规则既是约束人行为规范的制度,同时规则又是维护人生命安全的保护伞;假如没有交通规则,我们的生活会是什么样?假如没有安全规则,我们的生产秩序又会是什么样?所以,我们既然给自己制定了规则,我们就有义务去维护它、遵守它! 参考技术D 规则:规定出来供大家共同遵守的制度或章程。(普遍性)
规则,是以一种可持续可预测的方式运用信息的系统性决策程序。
规则是多种多样的。本回答被提问者采纳
CSS 规则“clear: both”有啥作用?
【中文标题】CSS 规则“clear: both”有啥作用?【英文标题】:What does the CSS rule "clear: both" do?CSS 规则“clear: both”有什么作用? 【发布时间】:2012-10-04 00:22:09 【问题描述】:以下 CSS 规则有什么作用:
.clear clear: both;
为什么我们需要使用它?
【问题讨论】:
当您使用 CSSfloat
并希望下一个元素位于下方,而不是在右侧或左侧时。
当指定元素与 clear:both 一起使用时,该元素的左右两侧不允许有浮动元素
【参考方案1】:
我不会在这里(详细)解释浮点数是如何工作的,因为这个问题通常集中在为什么使用clear: both;
或者clear: both;
到底做了什么...... p>
我会保持这个答案简单明了,并会以图形方式向您解释为什么需要 clear: both;
或它的作用...
通常设计师将元素浮动到左侧或右侧,这会在另一侧创建一个空白空间,从而允许其他元素占据剩余空间。
他们为什么浮动元素?
当设计师需要 2 个并排的块级元素时,元素会浮动。例如,假设我们要设计一个基本网站,其布局如下...
Live Example 的演示图像。
演示代码
/* CSS: */
* /* Not related to floats / clear both, used it for demo purpose only */
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
header, footer
border: 5px solid #000;
height: 100px;
aside
float: left;
width: 30%;
border: 5px solid #000;
height: 300px;
section
float: left;
width: 70%;
border: 5px solid #000;
height: 300px;
.clear
clear: both;
<!-- HTML -->
<header>
Header
</header>
<aside>
Aside (Floated Left)
</aside>
<section>
Content (Floated Left, Can Be Floated To Right As Well)
</section>
<!-- Clearing Floating Elements-->
<div class="clear"></div>
<footer>
Footer
</footer>
注意: 您可能需要在样式表中明确添加 header
、footer
、aside
、section
(和其他 HTML5 元素)作为 display: block;
提到元素是块级元素。
解释:
我有一个基本布局、1 个页眉、1 个侧边栏、1 个内容区域和 1 个页脚。
header
没有浮动,接下来是 aside
标签,我将用于我的网站侧边栏,因此我将元素浮动到左侧。
注意:默认情况下,块级元素占据文档 100% 的宽度, 但是当向左或向右浮动时,它会根据 它包含的内容。
-
Normal Behavior Of Block Level Element
Floated Behavior Of Block Level Element
正如您所注意到的,左侧浮动的div
将其右侧的空间留给未使用,这将允许其后的div
在剩余空间中移动。
div
's will render one after the other if they are NOT floated
div
will shift beside each other if floated left or right
好的,这就是块级元素在向左或向右浮动时的行为方式,那么现在为什么需要clear: both;
?为什么?
因此,如果您在布局演示中记下 - 以防您忘记了,here 就是......
我正在使用一个名为.clear
的类,它拥有一个名为clear
的属性,其值为both
。那么让我们看看为什么它需要both
。
我已将aside
和section
元素浮动到左侧,因此假设我们有一个水池,其中header
是实心土地,aside
和section
漂浮在水池中和页脚又是坚实的土地,像这样..
所以蓝色的水不知道浮动元素的面积是多少,它们可以比水池更大或更小,所以这里出现了一个困扰 90% 的 CSS 初学者的常见问题:为什么容器元素的背景当它包含浮动元素时不会被拉伸。这是因为容器元素在这里是一个POOL,而POOL不知道有多少对象是浮动的,也不知道浮动元素的长度或宽度是多少,所以它只是不会拉伸。
-
Normal Flow Of The Document
Sections Floated To Left
Cleared Floated Elements To Stretch Background Color Of The Container
(请参阅此答案的 [Clearfix] 部分以获得巧妙的方法。我有意使用空的div
示例进行解释)
我在上面提供了 3 个示例,第一个是正常的文档流,其中 red
背景将按预期呈现,因为容器不包含任何浮动对象。
在第二个示例中,当对象向左浮动时,容器元素 (POOL) 将不知道浮动元素的尺寸,因此它不会拉伸到浮动元素的高度。
使用clear: both;
后,容器元素将被拉伸到其浮动元素尺寸。
使用clear: both;
的另一个原因是防止元素在剩余空间中向上移动。
假设您需要 2 个并排的元素,并且在它们下方有另一个元素...所以您将向左浮动 2 个元素,并且您希望在它们下方的另一个元素。
div
Floated left resulting in section
moving into remaining space
Floated div
cleared so that the section
tag will render below the floated div
s
第一个例子
第二个例子
最后但并非最不重要的一点是,footer
标签将在浮动元素之后呈现,因为我在声明 footer
标签之前使用了 clear
类,这确保了所有浮动元素(左/右)到那时都被清除了。
清除修复
来到与浮动相关的 clearfix。正如@Elky 已经指定的那样,我们清除这些浮点数的方式并不是一种干净的方式,因为我们使用的是一个空的div
元素,它不是div
元素的用途。因此,clearfix 出现了。
把它想象成一个虚拟元素,它会在你的父元素结束之前为你创建一个空元素。这将自动清除包含浮动元素的包装元素。这个元素实际上不会存在于你的 DOM 中,但会完成这项工作。
要自行清除任何具有浮动元素的包装元素,我们可以使用
.wrapper_having_floated_elements:after /* Imaginary class name */
content: "";
clear: both;
display: table;
注意我为class
使用的:after
伪元素。这将在包装元素关闭之前为它创建一个虚拟元素。如果我们查看 dom,您可以看到它在 Document 树中的显示方式。
因此,如果您看到,它是在浮动子 div
之后渲染的,我们在其中清除浮动,这相当于有一个空的 div
元素和 clear: both;
属性,我们也用于此目的。现在为什么 display: table;
和 content
不在此答案范围内,但您可以了解有关 pseudo element here 的更多信息。
请注意,这在 IE8 中也可以作为 IE8 supports :after
pseudo 使用。
原答案:
大多数开发人员在他们的页面上向左或向右浮动他们的内容,可能是带有徽标、侧边栏、内容等的 div,这些 div 向左或向右浮动,其余空间未使用,因此如果您放置其他容器,它也会在剩余空间中浮动,所以为了防止使用clear: both;
,它会清除所有向左或向右浮动的元素。
演示:
------------------ ----------------------------------
div1(Floated Left) Other div takes up the space here
------------------ ----------------------------------
现在,如果您想让另一个 div 呈现在 div1
下方,那么您将使用 clear: both;
以确保您清除所有浮动,左或右
------------------
div1(Floated Left)
------------------
<div style="clear: both;"><!--This <div> acts as a separator--></div>
----------------------------------
Other div renders here now
----------------------------------
【讨论】:
如果您从未听说过浮动,我建议您先阅读浮动的介绍 --- 例如,请参阅下一个答案中的链接。然后回来阅读这个答案 - 这很有意义。 请注意,浮点数并非最初被发明为具有两个并排的块级元素,这只是副作用!最初的目的是让文本内嵌在图像周围流动,因此您可以在任一方向浮动图像。 在阅读本文之前参考相关的简短答案,只是为了获得一个大致的想法..***.com/questions/16568272/… @mr-alien 这些像jsfiddle.net/N82UD/138 这样的“错误”让我远离浮动。我像埃博拉病毒一样避开它们。也许你可以帮助我一劳永逸地与花车和平相处。 @Carlo:在 Twitter Bootstrap 等模板中大量使用的替代方案;就是把display: inline-block
放在一个元素上,在父元素上你可以使用text-align: left
、text-align: center
或text-align: right
。【参考方案2】:
clear
属性表示元素的左侧、右侧或两侧不能与同一块格式化上下文中的早期浮动元素相邻。清除的元素被推到相应的浮动元素下方。例子:
clear: none;
元素与浮动元素保持相邻
body
font-family: monospace;
background: #EEE;
.float-left
float: left;
width: 60px;
height: 60px;
background: #CEF;
.float-right
float: right;
width: 60px;
height: 60px;
background: #CEF;
.clear-none
clear: none;
background: #FFF;
<div class="float-left">float: left;</div>
<div class="float-right">float: right;</div>
<div class="clear-none">clear: none;</div>
clear: left;
被推到左浮动元素下方的元素
body
font-family: monospace;
background: #EEE;
.float-left
float: left;
width: 60px;
height: 60px;
background: #CEF;
.float-right
float: right;
width: 60px;
height: 120px;
background: #CEF;
.clear-left
clear: left;
background: #FFF;
<div class="float-left">float: left;</div>
<div class="float-right">float: right;</div>
<div class="clear-left">clear: left;</div>
clear: right;
元素被推到右浮动元素下方
body
font-family: monospace;
background: #EEE;
.float-left
float: left;
width: 60px;
height: 120px;
background: #CEF;
.float-right
float: right;
width: 60px;
height: 60px;
background: #CEF;
.clear-right
clear: right;
background: #FFF;
<div class="float-left">float: left;</div>
<div class="float-right">float: right;</div>
<div class="clear-right">clear: right;</div>
clear: both;
元素被推到所有浮动元素的下方
body
font-family: monospace;
background: #EEE;
.float-left
float: left;
width: 60px;
height: 60px;
background: #CEF;
.float-right
float: right;
width: 60px;
height: 60px;
background: #CEF;
.clear-both
clear: both;
background: #FFF;
<div class="float-left">float: left;</div>
<div class="float-right">float: right;</div>
<div class="clear-both">clear: both;</div>
clear
不影响当前块格式化上下文之外的浮点数
body
font-family: monospace;
background: #EEE;
.float-left
float: left;
width: 60px;
height: 120px;
background: #CEF;
.inline-block
display: inline-block;
background: #BDF;
.inline-block .float-left
height: 60px;
.clear-both
clear: both;
background: #FFF;
<div class="float-left">float: left;</div>
<div class="inline-block">
<div>display: inline-block;</div>
<div class="float-left">float: left;</div>
<div class="clear-both">clear: both;</div>
</div>
【讨论】:
优秀。这是最好的答案。我想知道为什么另一个答案被接受了。 如果我们从这个场景中删除display: inline-block;
css 属性会发生什么?它将inline-block
父元素拉伸到其具有类float-left
的兄弟元素。这使得“清除不影响当前块格式化上下文之外的浮点数”语句错误。有人能解释一下吗?
@SashrikaWaidyarathna:父元素不一定会为其子元素生成block formatting context。在您的示例中 (a) 删除 display: inline-block
意味着它不再生成块格式化上下文 (b) 该元素 和 内的浮动/清除第一个浮动全部成为一部分相同的块格式化上下文(视口)。
@SalmanA ,感谢您对 CSS 规范的解释。我不知道块格式化上下文的定义。
桑达尔·皮查伊分身?【参考方案3】:
CSS float and clear
Sample Fiddle
只需尝试使用class
sample
从div
中删除clear:both
属性,看看它是如何跟随浮动divs
的。
【讨论】:
【参考方案4】:先生。 Alien 的答案是完美的,但无论如何我不建议使用<div class="clear"></div>
,因为它只是一个让你的标记变脏的黑客。这是无用的空div
就结构和语义不好,这也使您的代码不灵活。在某些浏览器中,这个 div 会导致额外的高度,您必须添加 height: 0;
这更糟。但是当你想在你的浮动元素周围添加背景或边框时,真正的麻烦就开始了——它会因为web was designed badly而崩溃。我建议将浮动元素包装到具有clearfix CSS 规则的容器中。这也是 hack,但美观、更灵活、更易于人类和 SEO 机器人阅读。
【讨论】:
这篇其他帖子有更多关于clearfix
的详细信息:***.com/questions/211383/…【参考方案5】:
当您希望将一个元素放置在另一个元素的底部时,您可以在 CSS 中使用此代码。 它用于浮动。
如果您浮动内容,您可以向左或向右浮动......所以在一个常见的布局中,您可能有一个左导航、一个内容 div 和一个页脚。
为确保页脚保持在这两个浮动下方(如果您左右浮动),请将页脚设置为 clear: both
。
这样它将保持在两个浮动下方。
(如果你只清除左边那么你真的只需要clear: left;
。)
阅读本教程:
【讨论】:
什么教程?以上是关于什么叫规则?规则有什么作用?的主要内容,如果未能解决你的问题,请参考以下文章