溢出内容会导致删除边框(CSS和AngularJS)
Overflow content causes border removal (CSS and AngularJS)
我在应用程序中看到了一些非常奇怪的溢出内容行为。如果你看一下代码笔并水平滚动,你会发现一旦你开始滚动.track
div或可能的.cell
div上的边界,就会被删除。非常感谢您的帮助。
HTML
<section ng-app="netJamApp">
<section ng-controller="ProjectController" id="project">
<div class="tracks">
<div ng-repeat="i in getNumber(pref.NUM_TRACKS) track by $index" class="track">
<div ng-repeat="i in getNumber(cellsPerTrack(240)) track by $index" class="cell"></div>
</div>
</div>
</section>
</section>
CSS
#project {
padding: 20px;
}
#project .tracks {
overflow-x: auto;
display: flex;
flex-direction: column;
}
#project .tracks .track {
font-size: 30px;
list-style-type: none;
display: flex;
}
#project .tracks .track:first-child {
border: 1px solid #343436;
}
#project .tracks .track:not(first-child) {
border: 1px solid #343436;
border-top: none;
}
#project .tracks .cell {
min-width: 80px;
height: 50px;
background: #272822;
border-right: 2px solid #343436;
}
@keyframes slideInLeft {
from {
transform: translate3d(-100%, 0, 0);
visibility: visible;
}
to {
transform: translate3d(0, 0, 0);
}
}
.slide-in-left {
animation-name: slideInLeft;
animation-duration: 250ms;
visibility: visible !important;
}
Angular
var app = angular.module('netJamApp', []);
/* PROJECT CONTROLER */
app.controller('ProjectController', ['$scope', function($scope) {
// INIT SCOPE VARS
$scope.pref = {};
$scope.pref.NUM_TRACKS = 5;
$scope.pref.MIN_CELLS_PER_TRACK = 20;
$scope.pref.CELL_LENGTH = 15;
$scope.pref.PADDING_CELLS = 10;
// HELPERS
//used for ng-repeat to repeat a given number of times
$scope.getNumber = function(num) {
return new Array(num);
};
// determine the number of cells to insert inside of a track
$scope.cellsPerTrack = function(audioclip_len) {
var cells = audioclip_len / $scope.pref.CELL_LENGTH + $scope.pref.PADDING_CELLS;
return Math.ceil(Math.max(cells, $scope.pref.MIN_CELLS_PER_TRACK));
};
}]);
/* project controller */
您必须使用outline
CSS规则而不是border
。
这样编辑你的CSS可以解决这个问题:
.cell {
min-width: 80px;
height: 50px;
background: $sublime-black;
//border-right: 2px solid $codepen-grey; <-- replace with outline
outline:2px solid $codepen-grey;
}
工作代码笔
相关文章:
- 去掉jQuery for.css()修改,直接使用AngularJS
- 使用AngularJS动态更改css属性
- 如何使用AngularJS应用基于Json字符串响应的条件CSS类
- 使用 angularJs 修改 css.height 会导致 Internet Explorer 无法滚动到页面底部
- AngularJS - 在第一个可见元素上应用 CSS 类(Preferred No JQuery)
- angularjs模板和指令文件夹中的css
- css、html、angularjs或翡翠版
- 使用NG Repeat angularJS格式化CSS图像
- 是否可以将我网站上的普通javascript和css函数包含到我的angularjs应用程序中
- 在angularJs中单击更改css类
- 溢出内容会导致删除边框(CSS和AngularJS)
- AngularJS,CSS:突出显示特定的表行
- AngularJS正在等待CSS延迟加载
- 使用AngularJS 1.2和angular animate在CSS Transition上完成事件
- 通过类名和属性值获取元素,并在AngularJS中设置CSS
- 如何在AngularJS中将css类添加到transcluded ng repeat内容中
- CSS 偏移量使用 AngularJS 递增
- CSS,有没有办法在 Angularjs 中制作“text-align-last”
- 在angularjs ng-repeat中使用$index来生成css类
- AngularJS ngAnimate and animate.css