dedecms怎么修改css
margin和padding的效果肯定是不一样的
如上图
黑色的那条线是边框,是区分img标签和其他标签的分界点
绿色部分是padding,他是属于img标签的一部分
橘色部分是margin,他用于和其他元素拉开距离,他不是img的一部分
针对用margin还是padding的问题,我个人是这样认为的:
padding 能很好的控制元素内部内容的位置(例如,四周的留白,文字在容器内的页边距)
margin 能很好的控制元素之间的位置(例如,2个li之间空一些距离)
修改padding,在box-sizing为border-box的情况下,不会影响其他元素的位置
修改margin,不会对元素本身内容的位置造成影响
通常来说,大多数html元素均为块级元素(块级元素的表现是:以新行开始或结束,例如p,在默认情况下,p是占一整行的)
当然,其他元素可以设定display:block来成为块级元素
针对于img元素来说,设置为块级元素意义不大,因为他已经不能再在自己的内存嵌套其他元素了,设置img为块级元素,大多都是为了解决一些css的兼容性问题,例如在ie6下,设置img为block可以解决下面留白的问题
纯手打,希望帮到您
由于dedecms将ckeditor做了集成,和一般的只针对于ckeditor对configjs修改不同,以后是我在dedecms 57版本上添加行间距按钮的方法:
1、下载ckeditor的行距插件包 ;
2解压到ckeditor/plugins目录下;
3、由于dedecms 57自己集成了一个dedepage插件,用来添加ckeditor自定义插件,在/include/ckeditor/plugins/dedepage文件夹下,打开pluginjs文件在最后面添加: requires : [ 'lineheight' ],添加完之后的代码如下:
// Register a plugin named "dedepage"
(function()
{
CKEDITORpluginsadd( 'dedepage',
{
init : function( editor )
{
// Register the command
editoraddCommand( 'dedepage',{
exec : function( editor )
{
// Create the element that represents a print break
// alert('dedepageCmd!');
editorinsertHtml("#p#副标题#e#");
}
});
// alert('dedepage!');
// Register the toolbar button
editoruiaddButton( 'MyPage',
{
label : '插入分页符',
command : 'dedepage',
icon: 'images/dedepagegif'
});
// alert(editorname);
},
requires : [ 'fakeobjects' ],
requires : [ 'lineheight' ]
});
})();
4、修改/include/ckeditor/ckeditorincphp文件,在$toolbar['Basic'] 的最后一行添加元素Code,修改后代码如下:
$toolbar['Basic'] = array(
array( 'Source','-','Templates'),
array( 'Cut','Copy','Paste','PasteText','PasteFromWord','-','Print'),
array( 'Undo','Redo','-','Find','Replace','-','SelectAll','RemoveFormat'),
array( 'ShowBlocks'),array('Image','Flash','Addon'),array('Maximize'),'/',
array( 'Bold','Italic','Underline','Strike','-'),
array( 'NumberedList','BulletedList','-','Outdent','Indent','Blockquote'),
array( 'JustifyLeft','JustifyCenter','JustifyRight','JustifyBlock'),
array( 'Table','HorizontalRule','Smiley','SpecialChar'),
array( 'Link','Unlink','Anchor'),'/',
array( 'Styles','Format','Font','FontSize'),
array( 'TextColor', 'BGColor', 'MyPage','MultiPic'),
array( 'lineheight')
);
至此OK!
ps,简单的自定义行距功能
1修改该功能的语言,在lineheight(就是行距插件的目录)/lang目录下添加相应的语言包,修改pluginjs文件115行为相应的语言。
2更改行距的功能按钮,修改pluginjs文件139行。
织梦DedeCMS修改模板默认CSS文件分析:首先,打开后台——模板——默认模板管理——indexhtm
看到有一句,<link href="{dede:globalcfg_templeturl/}/style/dedecmscss" rel="stylesheet" media="screen" type="text/css" />说明,我们模板是根据这个CSS来布局网页的,于是我们就打开网站目录下面的templetsstylededecmscss然后来分析一下CSS的构成。
我们根据主页的调用,来研究CSS这样容易理解。我们打开主页模板,找到:
<div class="w960 center clear mt1">/这句是控制除了网站头部和友情链接的所有结构样式/
那么 w960 center clear mt1 都定义了什么呢?我们打开DEDECMSCSS 找打相关的定义。
/---------- stock ---------/
center{
margin:0px auto; 定义了CSS模块的边缘位置都是0,也就是这个center的层 距离上右下左都是0px;
}
w960{
width:960px; 定义了整体的宽度为960px;
/position:relative;/
}
pright infos_userinfo {
margin-bottom: 0px; 定义了首页右部下的 互动中心的下面边缘为0px;
}
mt1{/ ( margin-top 1 ) /
margin-top:8px; 定义了mt1的顶部边缘为8px;
}
pright mt1{
margin-top:0px; 定义了pright 下面的mt1顶部边缘为0px;
}
mt2{/ ( margin-top 2 ) /
margin-top:16px; 顶部边缘为16px;
}
clear{
overflow:hidden; 如果clear层里面的内容超出了 层的范围 就隐藏起来。
}
<div class="pleft">这个pleft 的定义 没有在dedecmscss 中,但是我们会发现一句话
@import url("layoutcss");
@import url("pagecss");
这说明,在dedecmscss 中引用了 pagecss 和layoutcss 这两个样式表,于是我们就在pagecss 中找到了pleft 的定义
pleft{
width:712px;定义了宽度
float:left;该层向左浮动
overflow:hidden;超出范围则隐藏
}
<div class="bignews">
在该层下面调用的是新闻头条的内容,看看它的css
index bignews{
width:424px;
height:400px;
float:right; 向右浮动
border:1px solid #DFF2F5;表示边框线用 #dff2f5的实体颜色填充
background:url(/images/headbg-topgif) repeat-x;背景为 headbg-topgif 并且横向平铺
overflow:hidden;超出则隐藏。
}
所以,我们看到头条的这部分是在flash幻灯片右边显示,并且加上了浅蓝色的边框线。
<!--头条-->
<div class="onenews"> 再来看看 onenews是如何定义的。
index bignews onenews{
margin:0 3px 0 3px; 左右外边距分别空3个像素
padding:7px 6px;上左内边距分别空7,6个像素
border-bottom:1px dashed #EBEBEB;下边框加一个 #ebebeb的虚线
}
所以我们看见头条的文章左右都有一定的距离,并且下面还有一个虚线显示
</div>
<!-- /onenews -->
这个下面调用的是以往的头条,默认的有4篇文章,调用了d1 d1arc 2个css
index bignews divd1{
padding:6px 10px;
clear:both;这句话是清除浮动,如果不加它,大家可以试试看,是不是 d1 这个层就跑到 头条的右边了。
width:406px;
overflow:hidden;
}
index bignews divd1arc{
margin-right:12px;
width:190px;
float:left;因为此时要调用4篇文章,改文章是22排列的,如果不加这个属性,新闻就应该垂直排列了(因为你刚才用clear:both 清除浮动啦),大家试试看是不是这样的。
height:24px;
line-height:24px;行间距,即字体最底端与字体内部顶端之间的距离
overflow:hidden;
}
<!--/头条-->
<div class='newarticle'>最新文章</div>
下面看看 newarticle 这个css吧,还是拿快学网的首页举例子,上面的这句是用来显示 “最近更新”那几个绿颜色字的,看看它是怎么定义的。
index bignews divnewarticle{
height:24px; 高度
background:url(/images/new-articlegif) 8px 3px no-repeat;背景在x轴8px 和y轴3px出出现
font-size:0px;
color:#fff;
} 所以,我们能看到那个 最近更新 并且还有一个横条,其实它是个,大家右键另存为看看就知道了
<ul class="c2 ico1">
这里面调用了 c2 和ico1 两个 css
index bignews ulc2{
width:416px;
padding:0px 4px 0px; 内边距为 上0 右4下0
clear:both;清除浮动 和上面的意思一样
overflow:hidden;
}
ico1 这个css 在layoutcss 中了。
ico1 li{
padding-left:16px; 指的是 新闻列表左内边距为16px
background:url(/images/ico-1gif) 7px 11px no-repeat; 背景在7px,11px 处出现,所以我们看到最新文章的列表左边都有一个小黑点,这个小黑点就是 ico-1gif
}
</ul>
</div>
<!-- /bignews --> 到此,中部的头条新闻和最近更新已经分析完了。
<div class="flashnews">
看看flash的 css 定义
index flashnews{
width:280px;
height:192px;
overflow:hidden;
float:left;这句决定了,flash 的新闻列表在 头条的左边显示。如果你把bignews 和flashnews 的float 属性互换一下应该是上面结果呢?大家试试看。
}
</div>
<!-- /flashnews -->
<div class="latestnews">这边是特别推荐调用的样式,还是来看看css
index latestnews{
width:280px;
height:200px;
margin-top:8px;
float:left;
}
index latestnews dl dd{
padding:2px 5px;
}
index latestnews ul a{
color:#555;
}
0条评论