GVKun编程网logo

html – 在不破坏布局的情况下将div与底部对齐(div不被覆盖)

29

本文将为您提供关于html–在不破坏布局的情况下将div与底部对齐的详细介绍,我们还将为您解释div不被覆盖的相关知识,同时,我们还将为您提供关于bash–如何在不破坏布局的情况下回显$命令、c–在不

本文将为您提供关于html – 在不破坏布局的情况下将div与底部对齐的详细介绍,我们还将为您解释div不被覆盖的相关知识,同时,我们还将为您提供关于bash – 如何在不破坏布局的情况下回显$命令、c – 在不破坏元素的情况下调整std :: vector的大小、c – 在不破坏现有代码的情况下向结构添加字段、CSS Div宽度百分比和填充,不破坏布局的实用信息。

本文目录一览:

html – 在不破坏布局的情况下将div与底部对齐(div不被覆盖)

html – 在不破坏布局的情况下将div与底部对齐(div不被覆盖)

我想在这里将条形对齐到底部:http://jsfiddle.net/7vdLV/67/

我尝试使用以下技巧:

  .graph { position: relative; }
  .weekbar { position: absolute; bottom: 0; left: 0; }

然而它打破了图表,在这种情况下,有人能告诉我应该怎么做吗?

最佳答案
最简单的解决方案

应用

.weekbar{
 position:relative;
 display:inline-block;
 top:50%; // height of biggest bar
}

检查这个JSFiddle

或者,如果古老的浏览器支持不是很重要,您可以使用:: before元素,如下所示:

.graph::before{
 content:"";
 display:block;
 height:50%; // height of the biggest bar 
}
.weekbar{
 display:inline-block;
}

检查这个JSFiddle

bash – 如何在不破坏布局的情况下回显$命令

bash – 如何在不破坏布局的情况下回显$命令

我正在尝试在bash脚本中执行以下操作:
com=`ssh host "ls -lh"`

echo $com

它可以工作,但回声会破坏输出(而不是获取列中的所有行,我将它们全部连接起来).

如果我这样做:在CLI中ssh host ls -lh它会给我正确的输出和布局.

在回显变量时如何保留布局?

你需要:
echo "$com"

引号使shell不会将值分解为“words”,而是将其作为echo的单个参数传递.

c – 在不破坏元素的情况下调整std :: vector的大小

c – 在不破坏元素的情况下调整std :: vector的大小

我一直在使用相同的std :: vector< int>为了尽量避免一直分配deallocating.在几行中,我的代码如下:

std::vector<int> myVector;
myVector.reserve(4);

for (int i = 0; i < 100; ++i) {
    fillVector(myVector);
    //use of myVector
    //....
    myVector.resize(0);
}

在每次迭代中,myVector最多将填充4个元素.为了制作高效的代码,我想总是使用myVector.但是,在myVector.resize()中,myVector中的元素正在被销毁.我知道myVector.clear()会产生同样的效果.

我想如果我可以覆盖myVector中的现有元素,我可以节省一些时间.但是我认为std :: vector无法做到这一点.

有没有办法做到这一点?创建一个覆盖元素的本土实现是否有意义?

解决方法

在这种情况下,std :: vector不是解决方案.你不想重新调整/清除/(de)重新分配?别.

> fillVector()用每次迭代中已知的元素数填充’vector’.
>向量在内部表示为T *类型的连续内存块.
>您不希望每次(de)分配内存.

好.使用简单的结构:

struct upTo4ElemVectorOfInts
{
  int data[4];
  size_t elems_num;
};

并修改fillVector()以保存其他信息:

void fillVector(upTo4ElemVectorOfInts& vec)
{
  //fill vec.data with values
  vec.elems_num = filled_num; //save how many values was filled in this iteration
}

以同样的方式使用它:

upTo4ElemVectorOfInts myVector;

for (int i = 0; i < 100; ++i)
{
  fillVector(myVector);
  //use of myVector:
  //- myVector.data contains data (it's equivalent of std::vector<>::data())
  //- myVector.elems_num will tell you how many numbers you should care about
  //nothing needs to be resized/cleared
}

附加说明:

如果您想要更通用的解决方案(对任何类型或大小进行操作),您当然可以使用模板:

template <class T,size_t Size>
struct upToSizeElemVectorOfTs
{
  T data[Size];
  size_t elems_num;
};

并调整fillVector()以接受模板而不是已知类型.

这个解决方案可能是最快的.你可以这样想:“嘿,如果我想填充100个元素?1000?10000?那么呢?10000-elem数组将消耗大量存储空间!”.
无论如何它会消耗. Vector会自动调整大小,并且此reallocs不受您的控制,因此效率非常低.如果您的阵列相当小并且您可以预测所需的最大大小,请始终使用在本地堆栈上创建的固定大小的存储.它更快,更高效,更简单.当然这不适用于1.000.000元素的数组(在这种情况下你会得到Stack Overflow).

c – 在不破坏现有代码的情况下向结构添加字段

c – 在不破坏现有代码的情况下向结构添加字段

所以我正在使用这个巨大的代码库,并意识到其中一个结构缺少一个重要的领域.我尽可能密切地查看代码(使用结构)并得出结论,添加一个额外的字段不会破坏它.

关于我可以搞砸的任何想法?

另外:欢迎设计建议 – 我能做到这一点的最佳方式是什么?

例如. (如果我不清楚):

typedef struct foo
{
  int a;
  int b;
}
foo;

现在是:

typedef struct foo
{
  int a;
  int b;
  int c;
}
foo;

解决方法

从你上面写的,我看不出有什么不对.我能想到的两件事:

>每当您更改代码并重新编译时,您都会引入查找“隐藏”错误的功能.也就是说,未初始化的指针,你的新数据结构可能只是大到可以被破坏.
>您确定在使用之前初始化c吗?

跟进:

既然你还没有找到错误,我就会停止查看你的结构.有人曾经写过先寻找马,斑马第二.也就是说,错误可能不是一个奇特的错误.您在单元测试中的覆盖范围是多少?我假设这是遗留代码,几乎总是意味着0%或至少这是我的经验.这准确吗?

CSS Div宽度百分比和填充,不破坏布局

CSS Div宽度百分比和填充,不破坏布局

可能有一个简单的解决方案,但它已经困扰我很多年了…

让我解释一下情况。我有一个div的ID’container’,包含页面中的所有内容(包括页眉和页脚也),将保持一切内联,我可以做只是一个简单的“margin:0 auto;而不是倍数。所以让我说我的#container的宽度设置为80%。现在如果我把另一个div放在相同的宽度(80%),并给它的ID’header’与10px填充全部,布局将“打破”(可以说),因为页面添加填充量宽度。那么,我怎么能使它保持边界而不使用方法,如更低的百分比为#header div?基本上,我想让它流动。

这里是一些例子代码,给你一个想法我在说什么…

CSS

#container {
    position:relative;
    width:80%;
    height:auto;
}
#header {
    position:relative;
    width:80%;
    height:50px;
    padding:10px;
}

HTML

<div id="container">
    <div id="header">Header contents</div>
</div>

任何人可以帮助我解决这个问题,一直在欺骗我永远?

解决方法

如果你想#header与你的容器相同的宽度,有10px的填充,你可以省略它的宽度声明。这将导致它隐式占用其整个父的宽度(因为div是默认的块级元素)。

然后,由于你没有定义一个宽度,10px的填充将正确应用于元素内部,而不是添加到其宽度:

#container {
    position: relative;
    width: 80%;
}

#header {
    position: relative;
    height: 50px;
    padding: 10px;
}

你可以看到它in action here。

使用百分比宽度和像素填充/边距时的键不是在同一元素上定义它们(如果要精确控制大小)。将百分比宽度应用于父项,然后将像素填充/边距应用于display:block child,没有设置宽度。

更新

处理这个的另一个选择是使用box-sizing CSS规则:

#container { 
    -webkit-Box-sizing: border-Box; /* Safari/Chrome,other WebKit */
    -moz-Box-sizing: border-Box;    /* Firefox,other Gecko */
    Box-sizing: border-Box;         /* Opera/IE 8+ */

    /* Since this element Now uses border-Box sizing,the 10px of horizontal
       padding will be drawn inside the 80% width */
    width: 80%;
    padding: 0 10px;
}

这里是一个帖子谈论如何box-sizing works。

今天关于html – 在不破坏布局的情况下将div与底部对齐div不被覆盖的介绍到此结束,谢谢您的阅读,有关bash – 如何在不破坏布局的情况下回显$命令、c – 在不破坏元素的情况下调整std :: vector的大小、c – 在不破坏现有代码的情况下向结构添加字段、CSS Div宽度百分比和填充,不破坏布局等更多相关知识的信息可以在本站进行查询。

本文标签: